Description: Add multiarch support to jam files Author: Jörg Frings Fürst Forwarded: http://www.freelists.org/post/argyllcms/Some-buildsystem-issues Last-Update: 2015-08-23 --- This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ Index: trunk/Jambase =================================================================== --- trunk.orig/Jambase +++ trunk/Jambase @@ -945,7 +945,7 @@ else if $(UNIX) # UNIX defaults - CCFLAGS ?= -DUNIX -D_THREAD_SAFE -pipe ; + CCFLAGS ?= $(CPPFLAGS) -g -DUNIX -D_THREAD_SAFE -pipe -fPIC ; CCOPTFLAG ?= -O2 ; CCDEBUGFLAG ?= -g ; CCPROFFLAG ?= ; @@ -955,7 +955,7 @@ else if $(UNIX) CHGRP ?= chgrp ; CHOWN ?= chown ; LEX ?= lex ; - LINKFLAGS ?= ; + LINKFLAGS ?= $(LDFLAGS) ; LINKOPTFLAG ?= -O ; # Affects creating .so's LINKSTRIPFLAG ?= -s ; LINKDEBUGFLAG ?= ; @@ -1041,7 +1041,7 @@ else if $(UNIX) RMDIR ?= $(RM) ; RSH ?= rsh ; SED ?= sed ; - SHELLHEADER ?= "#!/bin/sh" ; + SHELLHEADER ?= "#!/bin/bash" ; SHELLMODE ?= 755 ; SLASH ?= / ; STDHDRS ?= /usr/include ; Index: trunk/Jamtop =================================================================== --- trunk.orig/Jamtop +++ trunk/Jamtop @@ -23,6 +23,7 @@ ANCHORED_PATH_VARS = DESTDIR ; # Should we also allow CFLAGS, CXXFLAGS, CPPFLAGS & LDFLAGS env. variables # to have effect ? +BUILD_SHARED_LIB = 1 ; # Tell standalone libraries that they are part of Argyll: DEFINES += ARGYLLCMS ; @@ -152,17 +153,82 @@ rule CheckForLibrary { } if ! $(BUILTIN_$(UCASE)) && $(UNIX) { - if [ GLOB /usr/include$(subd) : $(lcase).h $(lcase)lib.h ] - || [ GLOB /usr/local/include$(subd) : $(lcase).h $(lcase)lib.h ] - || [ GLOB /usr/include/x86_64-linux-gnu$(subd) : $(lcase).h $(lcase)lib.h ] - || [ GLOB /usr/include/i386-linux-gnu$(subd) : $(lcase).h $(lcase)lib.h ] { - if [ GLOB /usr/lib : lib$(lcase).so ] || [ GLOB /usr/lib : lib$(lcase).a ] - || [ GLOB /usr/local/lib : lib$(lcase).so ] || [ GLOB /usr/local/lib : lib$(lcase).a ] - || [ GLOB /usr/lib64 : lib$(lcase).so ] || [ GLOB /usr/lib64 : lib$(lcase).a ] - || [ GLOB /usr/lib/x86_64-linux-gnu : lib$(lcase).so ] - || [ GLOB /usr/lib/x86_64-linux-gnu : lib$(lcase).a ] - || [ GLOB /usr/lib/i386-linux-gnu : lib$(lcase).so ] - || [ GLOB /usr/lib/i386-linux-gnu : lib$(lcase).a ] { + if [ GLOB /usr/include$(subd) : $(lcase).h $(lcase)lib.h ] + || [ GLOB /usr/local/include$(subd) : $(lcase).h $(lcase)lib.h ] + || [ GLOB /usr/include/x86_64-linux-gnu$(subd) : $(lcase).h $(lcase)lib.h ] + || [ GLOB /usr/include/i386-linux-gnu$(subd) : $(lcase).h $(lcase)lib.h ] + || [ GLOB /usr/include/alpha-linux-gnu$(subd) : $(lcase).h $(lcase)lib.h ] + || [ GLOB /usr/include/aarch64-linux-gnu$(subd) : $(lcase).h $(lcase)lib.h ] + || [ GLOB /usr/include/arm-linux-gnueabi$(subd) : $(lcase).h $(lcase)lib.h ] + || [ GLOB /usr/include/arm-linux-gnueabihf$(subd) : $(lcase).h $(lcase)lib.h ] + || [ GLOB /usr/include/hppa-linux-gnu$(subd) : $(lcase).h $(lcase)lib.h ] + || [ GLOB /usr/include/i386-gnu$(subd) : $(lcase).h $(lcase)lib.h ] + || [ GLOB /usr/include/x86_64-kfreebsd-gnu$(subd) : $(lcase).h $(lcase)lib.h ] + || [ GLOB /usr/include/i386-kfreebsd-gnu$(subd) : $(lcase).h $(lcase)lib.h ] + || [ GLOB /usr/include/m68k-linux-gnu$(subd) : $(lcase).h $(lcase)lib.h ] + || [ GLOB /usr/include/mips-linux-gnu$(subd) : $(lcase).h $(lcase)lib.h ] + || [ GLOB /usr/include/mipsel-linux-gnu$(subd) : $(lcase).h $(lcase)lib.h ] + || [ GLOB /usr/include/mips64el-linux-gnuabi64$(subd) : $(lcase).h $(lcase)lib.h ] + || [ GLOB /usr/include/powerpc-linux-gnu$(subd) : $(lcase).h $(lcase)lib.h ] + || [ GLOB /usr/include/powerpc-linux-gnuspe$(subd) : $(lcase).h $(lcase)lib.h ] + || [ GLOB /usr/include/powerpc64-linux-gnu$(subd) : $(lcase).h $(lcase)lib.h ] + || [ GLOB /usr/include/powerpc64le-linux-gnu$(subd) : $(lcase).h $(lcase)lib.h ] + || [ GLOB /usr/include/s390x-linux-gnu$(subd) : $(lcase).h $(lcase)lib.h ] + || [ GLOB /usr/include/sh4-linux-gnu$(subd) : $(lcase).h $(lcase)lib.h ] + || [ GLOB /usr/include/sparc-linux-gnu$(subd) : $(lcase).h $(lcase)lib.h ] + || [ GLOB /usr/include/sparc64-linux-gnu$(subd) : $(lcase).h $(lcase)lib.h ] + || [ GLOB /usr/include/x86_64-linux-gnux32$(subd) : $(lcase).h $(lcase)lib.h ] { + if [ GLOB /usr/lib : lib$(lcase).so ] || [ GLOB /usr/lib : lib$(lcase).a ] + || [ GLOB /usr/local/lib : lib$(lcase).so ] + || [ GLOB /usr/local/lib : lib$(lcase).a ] + || [ GLOB /usr/lib64 : lib$(lcase).so ] + || [ GLOB /usr/lib64 : lib$(lcase).a ] + || [ GLOB /usr/lib/x86_64-linux-gnu : lib$(lcase).so ] + || [ GLOB /usr/lib/x86_64-linux-gnu : lib$(lcase).a ] + || [ GLOB /usr/lib/i386-linux-gnu : lib$(lcase).so ] + || [ GLOB /usr/lib/i386-linux-gnu : lib$(lcase).a ] + || [ GLOB /usr/lib/alpha-linux-gnu : lib$(lcase).so ] + || [ GLOB /usr/lib/alpha-linux-gnu : lib$(lcase).a ] + || [ GLOB /usr/lib/aarch64-linux-gnu : lib$(lcase).so ] + || [ GLOB /usr/lib/aarch64-linux-gnu : lib$(lcase).a ] + || [ GLOB /usr/lib/arm-linux-gnueabi : lib$(lcase).so ] + || [ GLOB /usr/lib/arm-linux-gnueabi : lib$(lcase).a ] + || [ GLOB /usr/lib/arm-linux-gnueabihf : lib$(lcase).so ] + || [ GLOB /usr/lib/arm-linux-gnueabihf : lib$(lcase).a ] + || [ GLOB /usr/lib/hppa-linux-gnu : lib$(lcase).so ] + || [ GLOB /usr/lib/hppa-linux-gnu : lib$(lcase).a ] + || [ GLOB /usr/lib/i386-gnu : lib$(lcase).so ] + || [ GLOB /usr/lib/i386-gnu : lib$(lcase).a ] + || [ GLOB /usr/lib/x86_64-kfreebsd-gnu : lib$(lcase).so ] + || [ GLOB /usr/lib/x86_64-kfreebsd-gnu : lib$(lcase).a ] + || [ GLOB /usr/lib/i386-kfreebsd-gnu : lib$(lcase).so ] + || [ GLOB /usr/lib/i386-kfreebsd-gnu : lib$(lcase).a ] + || [ GLOB /usr/lib/m68k-linux-gnu : lib$(lcase).so ] + || [ GLOB /usr/lib/m68k-linux-gnu : lib$(lcase).a ] + || [ GLOB /usr/lib/mips-linux-gnu : lib$(lcase).so ] + || [ GLOB /usr/lib/mips-linux-gnu : lib$(lcase).a ] + || [ GLOB /usr/lib/mipsel-linux-gnu : lib$(lcase).so ] + || [ GLOB /usr/lib/mipsel-linux-gnu : lib$(lcase).a ] + || [ GLOB /usr/lib/mips64el-linux-gnuabi64 : lib$(lcase).so ] + || [ GLOB /usr/lib/mips64el-linux-gnuabi64 : lib$(lcase).a ] + || [ GLOB /usr/lib/powerpc-linux-gnu : lib$(lcase).so ] + || [ GLOB /usr/lib/powerpc-linux-gnu : lib$(lcase).a ] + || [ GLOB /usr/lib/powerpc-linux-gnuspe : lib$(lcase).so ] + || [ GLOB /usr/lib/powerpc-linux-gnuspe : lib$(lcase).a ] + || [ GLOB /usr/lib/powerpc64-linux-gnu : lib$(lcase).so ] + || [ GLOB /usr/lib/powerpc64-linux-gnu : lib$(lcase).a ] + || [ GLOB /usr/lib/powerpc64le-linux-gnu : lib$(lcase).so ] + || [ GLOB /usr/lib/powerpc64le-linux-gnu : lib$(lcase).a ] + || [ GLOB /usr/lib/s390x-linux-gnu : lib$(lcase).so ] + || [ GLOB /usr/lib/s390x-linux-gnu : lib$(lcase).a ] + || [ GLOB /usr/lib/sh4-linux-gnu : lib$(lcase).so ] + || [ GLOB /usr/lib/sh4-linux-gnu : lib$(lcase).a ] + || [ GLOB /usr/lib/sparc-linux-gnu : lib$(lcase).so ] + || [ GLOB /usr/lib/sparc-linux-gnu : lib$(lcase).a ] + || [ GLOB /usr/lib/sparc64-linux-gnu : lib$(lcase).so ] + || [ GLOB /usr/lib/sparc64-linux-gnu : lib$(lcase).a ] + || [ GLOB /usr/lib/x86_64-linux-gnux32 : lib$(lcase).so ] + || [ GLOB /usr/lib/x86_64-linux-gnux32 : lib$(lcase).a ] { echo "Using system $(UCASE) library" ; $(UCASE)LIB = ; $(UCASE)INC = ;