From e685ddf79962fd87d846e19a41c057a6f1368543 Mon Sep 17 00:00:00 2001 From: Alexander von Gluck IV Date: Wed, 19 Dec 2012 11:47:48 -0600 Subject: [PATCH] libGL: Major shakeup * libmesa and libgallium no longer live in libGL * opengl kit gets libglapi for dispatch * swrast will get libmesa * swpipe will get libmesagallium + gallium drivers + llvm --- build/jam/BuildFeatures | 5 +---- src/add-ons/opengl/swpipe/Jamfile | 9 ++++++--- src/add-ons/opengl/swrast/Jamfile | 11 ++++------- src/add-ons/opengl/swrast_legacy/Jamfile | 4 +++- src/kits/opengl/Jamfile | 4 ++-- 5 files changed, 16 insertions(+), 17 deletions(-) diff --git a/build/jam/BuildFeatures b/build/jam/BuildFeatures index 625998d159..7320a440e1 100644 --- a/build/jam/BuildFeatures +++ b/build/jam/BuildFeatures @@ -250,12 +250,9 @@ if $(TARGET_ARCH) = x86 { HAIKU_MESA_HEADERS_DEPENDENCY = [ ExtractArchive $(HAIKU_MESA_DIR) : include/ : $(zipFile) : extracted-mesa ] ; - HAIKU_MESA_LIBS = [ ExtractArchive $(HAIKU_MESA_DIR) + HAIKU_GLAPI_LIBS = [ ExtractArchive $(HAIKU_MESA_DIR) : - $(galliumObjects) lib.haiku/libglapi.a - $(glslObject) - lib.haiku/libmesa.a : $(zipFile) : extracted-mesa ] ; diff --git a/src/add-ons/opengl/swpipe/Jamfile b/src/add-ons/opengl/swpipe/Jamfile index 6283699f9a..b8bb51ade6 100644 --- a/src/add-ons/opengl/swpipe/Jamfile +++ b/src/add-ons/opengl/swpipe/Jamfile @@ -13,15 +13,18 @@ local sources = GalliumFramebuffer.cpp bitmap_wrapper.cpp ; +local HAIKU_SWPIPE_DRIVER = $(HAIKU_MESA_DIR)/lib.haiku/libsoftpipe.a ; + if $(HAIKU_LLVM_PRESENT) { # TODO: Add LLVM OptionalBuildPackage SubDirC++Flags [ FDefines HAVE_LLVM=0x0302 ] ; # TODO: This is a hack for now SubDirSysHdrs /boot/common/include ; + HAIKU_SWPIPE_DRIVER = + $(HAIKU_MESA_DIR)/lib.haiku/libllvmpipe.a ; } - UsePrivateHeaders interface ; SubDirSysHdrs $(HAIKU_MESA_HEADERS) ; Includes [ FGristFiles $(sources) ] : $(HAIKU_MESA_HEADERS_DEPENDENCY) ; @@ -31,7 +34,7 @@ AddResources Software\ Renderer : SoftwareRenderer.rdef ; Addon Software\ Renderer : $(sources) : libGL.so - $(HAIKU_MESA_DIR)/lib.haiku/libgallium.a - $(HAIKU_MESA_DIR)/lib.haiku/libsoftpipe.a + $(HAIKU_MESA_DIR)/lib.haiku/libmesagallium.a + $(HAIKU_SWPIPE_DRIVER) be translation $(TARGET_LIBSUPC++) ; diff --git a/src/add-ons/opengl/swrast/Jamfile b/src/add-ons/opengl/swrast/Jamfile index 091b217f1e..82ddbc685a 100644 --- a/src/add-ons/opengl/swrast/Jamfile +++ b/src/add-ons/opengl/swrast/Jamfile @@ -35,15 +35,12 @@ UseHeaders [ FDirName $(HAIKU_MESA_DIR) src mesa main ] ; UseHeaders [ FDirName $(HAIKU_MESA_DIR) src mapi ] ; UseHeaders [ FDirName $(HAIKU_MESA_DIR) src mapi glapi ] ; -# For older versions of Mesa -UseHeaders [ FDirName $(HAIKU_MESA_DIR) src mesa glapi ] ; -UseHeaders [ FDirName $(HAIKU_MESA_DIR) src mesa tnl ] ; -UseHeaders [ FDirName $(HAIKU_MESA_DIR) src mesa x86 ] ; - - AddResources Software\ Rasterizer : MesaSoftwareRenderer.rdef ; Addon Software\ Rasterizer : MesaSoftwareRenderer.cpp - : libGL.so be $(TARGET_LIBSUPC++) + : + $(HAIKU_MESA_DIR)/lib.haiku/libmesa.a + $(HAIKU_MESA_DIR)/lib.haiku/libglsl.a + libGL.so be $(TARGET_LIBSUPC++) ; diff --git a/src/add-ons/opengl/swrast_legacy/Jamfile b/src/add-ons/opengl/swrast_legacy/Jamfile index 1442673e96..88d606b5bd 100644 --- a/src/add-ons/opengl/swrast_legacy/Jamfile +++ b/src/add-ons/opengl/swrast_legacy/Jamfile @@ -48,5 +48,7 @@ AddResources Legacy\ Software\ Rasterizer : MesaSoftwareRenderer.rdef ; Addon Legacy\ Software\ Rasterizer : MesaSoftwareRenderer.cpp - : libGL.so be $(TARGET_LIBSUPC++) + : + $(HAIKU_MESA_DIR)/lib.haiku/lib.haiku/libmesa.a + libGL.so be $(TARGET_LIBSUPC++) ; diff --git a/src/kits/opengl/Jamfile b/src/kits/opengl/Jamfile index 2b96f1f0e2..4a70471140 100644 --- a/src/kits/opengl/Jamfile +++ b/src/kits/opengl/Jamfile @@ -46,8 +46,8 @@ SharedLibrary libGL.so : $(sources) : # GLU $(HAIKU_GLU_LIBS) - # Mesa libraries (from Mesa optional package): - $(HAIKU_MESA_LIBS) + # GLAPI Dispatch code (from Mesa buildpackage) + $(HAIKU_GLAPI_LIBS) # External libraries: game # BWindowScreen needed by BGLScreen stub class