From 75263c5d09f9fbfb25b534d3517c94f4d9380c80 Mon Sep 17 00:00:00 2001 From: ethanc8 Date: Tue, 28 Oct 2025 17:12:02 -0500 Subject: [PATCH] Lots of build fixes, minor cleanups --- .hgignore => .gitignore | 7 +++++-- CAAppKitBridge/Demo/DemoController.h | 2 +- Demo/DemoOpenGLView.m | 2 +- INSTALL.markdown | 6 +----- README.markdown | 9 ++++----- Source/CABackingStore.h | 2 +- Source/CARenderer.m | 4 ++-- Source/GLHelpers/CAGLProgram.h | 4 ++-- Source/GLHelpers/CAGLShader.h | 4 ++-- Source/GLHelpers/CAGLSimpleFramebuffer.h | 4 ++-- Source/GLHelpers/CAGLTexture.h | 4 ++-- Tests/QCTestOpenGLView.m | 2 +- Tests/hello.m | 2 +- Tests/hello_animation.m | 2 +- Tests/hello_carenderer.m | 2 +- Tests/hello_opal.m | 2 +- Tests/offscreen_render.m | 2 +- config.make | 4 ---- 18 files changed, 29 insertions(+), 35 deletions(-) rename .hgignore => .gitignore (74%) delete mode 100644 config.make diff --git a/.hgignore b/.gitignore similarity index 74% rename from .hgignore rename to .gitignore index d3d161f..05021d2 100644 --- a/.hgignore +++ b/.gitignore @@ -1,4 +1,3 @@ -syntax: glob */obj/* */QuartzCore.framework/* */derived_src/* @@ -9,4 +8,8 @@ Tests/CATransform3D/catransform3d* Tests/CAMediaTimingFunction/camediatimingfunction* Tests/*.app/* _notes/* - +**/.vscode +**/compile_commands.json +**/.cache +Demo/*.app +**/stamp.make diff --git a/CAAppKitBridge/Demo/DemoController.h b/CAAppKitBridge/Demo/DemoController.h index ed9f008..e4b3db5 100644 --- a/CAAppKitBridge/Demo/DemoController.h +++ b/CAAppKitBridge/Demo/DemoController.h @@ -29,7 +29,7 @@ #import #import #import -#import +#import #import "../Source/GSCAData.h" #import "../Source/NSView+CAMethods.h" diff --git a/Demo/DemoOpenGLView.m b/Demo/DemoOpenGLView.m index 6efa368..08051c8 100644 --- a/Demo/DemoOpenGLView.m +++ b/Demo/DemoOpenGLView.m @@ -27,7 +27,7 @@ #import "DemoOpenGLView.h" #if !(__APPLE__) -#import +#import #import #else #import diff --git a/INSTALL.markdown b/INSTALL.markdown index b0614cc..2509c68 100644 --- a/INSTALL.markdown +++ b/INSTALL.markdown @@ -6,11 +6,7 @@ Installing Please refer to README for more detailed explanation of requirements, supported features and how to use GNUstep QuartzCore! - 1. Take a look at the README for requirements. You'll need OpenGL headers, - cairo, gnustep-base, gnustep-gui, opal, libobjc2, and a modern compiler - such as clang. gcc-4.6+ will probably work, too. For requirements of - each individual library as well as installation procedure, refer to their - documentation (or refer to online search engines). + 1. Take a look at the README for requirements. 2. opal will need to be patched with `opal-nsfonthacks.patch`. 3. Just as with any other GNUstep library, don't forget to source the `GNUstep.sh` file. Then just run: diff --git a/README.markdown b/README.markdown index 778448e..edf7625 100644 --- a/README.markdown +++ b/README.markdown @@ -10,10 +10,11 @@ Ivan Vučica. Requirements ------------ -*Last updated: August 20, 2012* +*Last updated: October 28, 2025* * **Foundation**. You can use GNUstep Base or Apple Cocoa to get Foundation. * **AppKit**. You can use GNUstep GUI or Apple Cocoa to get AppKit. +* **CoreFoundation**. You can use GNUstep CoreBase or Apple Cocoa to get CoreFoundation. * **OpenGL 2.0**. Code makes use of framebuffers for offscreen rendering and of fragment shaders for shadows. By manually removing blocks of code that require framebuffers and shaders, it's probably possible to run the code on @@ -26,10 +27,7 @@ Requirements * **libobjc2**. While it may be possible to use the code with stock GCC runtime, the "new" GNUstep runtime is the only runtime code is being tested with. If you use Cocoa, Apple's "64-bit runtime" is also supported. -* **Patched Opal**. Opal currently conflicts with AppKit. More specifically, - it also implements an incompatible `NSFont`. An experimental patch is - provided against r35173 of Opal in `opal-nsfonthacks.patch`. - * Opal requires Cairo and may require corebase. +* **Opal**. API status ---------- @@ -129,6 +127,7 @@ readme. Some problems may be resolved by the time you're reading this. due to its use of `NSOpenGLContext` -- otherwise it doesn't care about the UI framework used -- an experimental patch is provided. See `opal-nsfonthacks.patch`. + * Note (2025) - this seems to be fixed. * **Opal sometimes returns 3 color components instead of 4**: Simply setting the alpha to 1 in that case seems to work correctly. diff --git a/Source/CABackingStore.h b/Source/CABackingStore.h index 10693c1..78bc8a7 100644 --- a/Source/CABackingStore.h +++ b/Source/CABackingStore.h @@ -44,7 +44,7 @@ #import #import #else -#import +#import #import #endif diff --git a/Source/CARenderer.m b/Source/CARenderer.m index 686527d..2fe41da 100644 --- a/Source/CARenderer.m +++ b/Source/CARenderer.m @@ -35,9 +35,9 @@ #import "CARenderer+FrameworkPrivate.h" #if !(__APPLE__) #define GL_GLEXT_PROTOTYPES 1 -#import +#import #import -#import + #else #import #import diff --git a/Source/GLHelpers/CAGLProgram.h b/Source/GLHelpers/CAGLProgram.h index 7cc89d3..0326818 100644 --- a/Source/GLHelpers/CAGLProgram.h +++ b/Source/GLHelpers/CAGLProgram.h @@ -31,9 +31,9 @@ #import #else #define GL_GLEXT_PROTOTYPES 1 -#import +#import #import -#import + #endif @interface CAGLProgram : NSObject diff --git a/Source/GLHelpers/CAGLShader.h b/Source/GLHelpers/CAGLShader.h index 3a1934b..c2186b3 100644 --- a/Source/GLHelpers/CAGLShader.h +++ b/Source/GLHelpers/CAGLShader.h @@ -31,9 +31,9 @@ #import #else #define GL_GLEXT_PROTOTYPES 1 -#import +#import #import -#import + #endif @interface CAGLShader : NSObject diff --git a/Source/GLHelpers/CAGLSimpleFramebuffer.h b/Source/GLHelpers/CAGLSimpleFramebuffer.h index 0d7462b..be7dfcf 100644 --- a/Source/GLHelpers/CAGLSimpleFramebuffer.h +++ b/Source/GLHelpers/CAGLSimpleFramebuffer.h @@ -37,9 +37,9 @@ #import #if !(__APPLE__) #define GL_GLEXT_PROTOTYPES 1 -#import +#import #import -#import + #else #import #import diff --git a/Source/GLHelpers/CAGLTexture.h b/Source/GLHelpers/CAGLTexture.h index 72eb8b1..eb4794b 100644 --- a/Source/GLHelpers/CAGLTexture.h +++ b/Source/GLHelpers/CAGLTexture.h @@ -31,9 +31,9 @@ #import #else #define GL_GLEXT_PROTOTYPES 1 -#import +#import #import -#import + #endif #import diff --git a/Tests/QCTestOpenGLView.m b/Tests/QCTestOpenGLView.m index acf45d8..557f7be 100644 --- a/Tests/QCTestOpenGLView.m +++ b/Tests/QCTestOpenGLView.m @@ -30,7 +30,7 @@ #import "GLESContext.h" #endif #if !(__APPLE__) -#import +#import #import #else #import diff --git a/Tests/hello.m b/Tests/hello.m index 575a947..8713915 100644 --- a/Tests/hello.m +++ b/Tests/hello.m @@ -25,7 +25,7 @@ */ #if !(__APPLE__) -#import +#import #else #import #import diff --git a/Tests/hello_animation.m b/Tests/hello_animation.m index 8db3c12..11c1717 100644 --- a/Tests/hello_animation.m +++ b/Tests/hello_animation.m @@ -25,7 +25,7 @@ */ #if !(__APPLE__) -#import +#import #import #else #import diff --git a/Tests/hello_carenderer.m b/Tests/hello_carenderer.m index 2753c2e..f518d40 100644 --- a/Tests/hello_carenderer.m +++ b/Tests/hello_carenderer.m @@ -25,7 +25,7 @@ */ #if !(__APPLE__) -#import +#import #import #else #import diff --git a/Tests/hello_opal.m b/Tests/hello_opal.m index 92a016e..89ef144 100644 --- a/Tests/hello_opal.m +++ b/Tests/hello_opal.m @@ -25,7 +25,7 @@ */ #if !(__APPLE__) -#import +#import #import #else #import diff --git a/Tests/offscreen_render.m b/Tests/offscreen_render.m index 8715a54..8293bec 100644 --- a/Tests/offscreen_render.m +++ b/Tests/offscreen_render.m @@ -25,7 +25,7 @@ */ #if !(__APPLE__) -#import +#import #import #else #import diff --git a/config.make b/config.make deleted file mode 100644 index fce8c13..0000000 --- a/config.make +++ /dev/null @@ -1,4 +0,0 @@ -# This file should be autogenerated from config.make.in. -# However, we have no need for "configure" script yet. - -