From a892e43ee3fa70295db5e149f2083bb7643e0f85 Mon Sep 17 00:00:00 2001 From: Alexander von Gluck IV Date: Fri, 21 Dec 2012 22:55:07 -0600 Subject: [PATCH] OpenGL: Fix library dependencies * Fixes gcc2 build --- build/jam/BuildFeatures | 31 ++++++++++++++++++++---- src/add-ons/opengl/swpipe/Jamfile | 10 ++++---- src/add-ons/opengl/swrast/Jamfile | 3 ++- src/add-ons/opengl/swrast_legacy/Jamfile | 4 +-- src/kits/opengl/Jamfile | 3 +-- 5 files changed, 36 insertions(+), 15 deletions(-) diff --git a/build/jam/BuildFeatures b/build/jam/BuildFeatures index 154d4eaaf4..0c84142ffe 100644 --- a/build/jam/BuildFeatures +++ b/build/jam/BuildFeatures @@ -246,15 +246,36 @@ if $(TARGET_ARCH) = x86 { HAIKU_MESA_HEADERS_DEPENDENCY = [ ExtractArchive $(HAIKU_MESA_DIR) : include/ : $(zipFile) : extracted-mesa ] ; - HAIKU_GLAPI_LIBS = [ ExtractArchive $(HAIKU_MESA_DIR) + HAIKU_GLAPI_LIB = [ ExtractArchive $(HAIKU_MESA_DIR) : lib.haiku/libglapi.a : $(zipFile) : extracted-mesa ] ; - - HAIKU_MESA_LIBS = - $(HAIKU_MESA_DIR)/lib.haiku/libmesa.a - $(HAIKU_MESA_DIR)/lib.haiku/libglsl.a ; + HAIKU_GLSL_LIB = [ ExtractArchive $(HAIKU_MESA_DIR) + : + lib.haiku/libglsl.a + : $(zipFile) + : extracted-mesa ] ; + HAIKU_MESA_LIB = [ ExtractArchive $(HAIKU_MESA_DIR) + : + lib.haiku/libmesa.a + : $(zipFile) + : extracted-mesa ] ; + HAIKU_GALLIUM_LIB = [ ExtractArchive $(HAIKU_MESA_DIR) + : + lib.haiku/libgallium.a + : $(zipFile) + : extracted-mesa ] ; + HAIKU_GALLIUM_SOFTPIPE_LIB = [ ExtractArchive $(HAIKU_MESA_DIR) + : + lib.haiku/libsoftpipe.a + : $(zipFile) + : extracted-mesa ] ; + HAIKU_GALLIUM_LLVMPIPE_LIB = [ ExtractArchive $(HAIKU_MESA_DIR) + : + lib.haiku/libllvmpipe.a + : $(zipFile) + : extracted-mesa ] ; HAIKU_MESA_HEADERS = [ FDirName $(HAIKU_MESA_DIR) include ] ; diff --git a/src/add-ons/opengl/swpipe/Jamfile b/src/add-ons/opengl/swpipe/Jamfile index 4b9c588a24..6d067ffc7e 100644 --- a/src/add-ons/opengl/swpipe/Jamfile +++ b/src/add-ons/opengl/swpipe/Jamfile @@ -13,7 +13,7 @@ local sources = GalliumFramebuffer.cpp bitmap_wrapper.cpp ; -local HAIKU_SWPIPE_DRIVER = $(HAIKU_MESA_DIR)/lib.haiku/libsoftpipe.a ; +local HAIKU_SWPIPE_DRIVER = $(HAIKU_GALLIUM_SOFTPIPE_LIB) ; local llvmLibraries = ; if $(HAIKU_LLVM_DIR) { @@ -24,8 +24,7 @@ if $(HAIKU_LLVM_DIR) { SubDirSysHdrs /boot/common/include ; HAIKU_LLVM_DIR = /boot/common/lib ; - HAIKU_SWPIPE_DRIVER = - $(HAIKU_MESA_DIR)/lib.haiku/libllvmpipe.a ; + HAIKU_SWPIPE_DRIVER = $(HAIKU_GALLIUM_LLVMPIPE_LIB) ; llvmLibraries = $(HAIKU_LLVM_DIR)/libLLVMAsmParser.a @@ -122,8 +121,9 @@ Addon Software\ Renderer : $(sources) : libGL.so $(HAIKU_SWPIPE_DRIVER) - $(HAIKU_MESA_LIBS) - $(HAIKU_MESA_DIR)/lib.haiku/libgallium.a + $(HAIKU_MESA_LIB) + $(HAIKU_GLSL_LIB) + $(HAIKU_GALLIUM_LIB) $(llvmLibraries) be translation stdc++ $(TARGET_LIBSUPC++) ; diff --git a/src/add-ons/opengl/swrast/Jamfile b/src/add-ons/opengl/swrast/Jamfile index c43e5a86be..513a251382 100644 --- a/src/add-ons/opengl/swrast/Jamfile +++ b/src/add-ons/opengl/swrast/Jamfile @@ -28,6 +28,7 @@ AddResources Software\ Rasterizer : MesaSoftwareRenderer.rdef ; Addon Software\ Rasterizer : MesaSoftwareRenderer.cpp : - $(HAIKU_MESA_LIBS) + $(HAIKU_MESA_LIB) + $(HAIKU_GLSL_LIB) libGL.so be $(TARGET_LIBSUPC++) ; diff --git a/src/add-ons/opengl/swrast_legacy/Jamfile b/src/add-ons/opengl/swrast_legacy/Jamfile index 02e0123483..34efd62ab8 100644 --- a/src/add-ons/opengl/swrast_legacy/Jamfile +++ b/src/add-ons/opengl/swrast_legacy/Jamfile @@ -47,8 +47,8 @@ UseHeaders [ FDirName $(HAIKU_MESA_DIR) src mesa x86 ] ; AddResources Legacy\ Software\ Rasterizer : MesaSoftwareRenderer.rdef ; Addon Legacy\ Software\ Rasterizer : - MesaSoftwareRenderer.cpp + $(sources) : - $(HAIKU_MESA_DIR)/lib.haiku/libmesa.a + $(HAIKU_MESA_LIB) libGL.so be $(TARGET_LIBSUPC++) ; diff --git a/src/kits/opengl/Jamfile b/src/kits/opengl/Jamfile index 4a70471140..7194f4805a 100644 --- a/src/kits/opengl/Jamfile +++ b/src/kits/opengl/Jamfile @@ -18,7 +18,6 @@ if $(TARGET_PLATFORM) != haiku { # We need our public GL headers also when not compiling for Haiku. } - SubDirSysHdrs $(HAIKU_GLU_HEADERS) ; SubDirSysHdrs $(HAIKU_MESA_HEADERS) ; Includes [ FGristFiles $(sources) ] : $(HAIKU_GLU_HEADERS_DEPENDENCY) ; @@ -47,7 +46,7 @@ SharedLibrary libGL.so : $(sources) : $(HAIKU_GLU_LIBS) # GLAPI Dispatch code (from Mesa buildpackage) - $(HAIKU_GLAPI_LIBS) + $(HAIKU_GLAPI_LIB) # External libraries: game # BWindowScreen needed by BGLScreen stub class