mirror of
https://git.FreeBSD.org/ports.git
synced 2025-01-13 07:34:50 +00:00
- Fix building on non-i386 architectures.
- Avoid hacking the SConstruct file, pass information through the environment.
This commit is contained in:
parent
a816e06ff7
commit
a7e888c12d
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=164036
@ -30,8 +30,10 @@ USE_GCC= 3.4+
|
|||||||
USE_GNOME= gtk20 libxml2
|
USE_GNOME= gtk20 libxml2
|
||||||
USE_PYTHON_BUILD= yes
|
USE_PYTHON_BUILD= yes
|
||||||
|
|
||||||
SUB_FILES= ${PORTNAME}
|
MAKE_ENV+= CC="${CC}" CXX="${CXX}" CCFLAGS="${CFLAGS}" BUILD=release \
|
||||||
|
LINKFLAGS="${LDFLAGS}" PTHREAD_LIBS="${PTHREAD_LIBS}" \
|
||||||
|
|
||||||
|
SUB_FILES= ${PORTNAME}
|
||||||
DATADIR= ${PREFIX}/lib/${PORTNAME}
|
DATADIR= ${PREFIX}/lib/${PORTNAME}
|
||||||
|
|
||||||
.include <bsd.port.pre.mk>
|
.include <bsd.port.pre.mk>
|
||||||
@ -42,16 +44,13 @@ EXTRA_PATCHES+= ${FILESDIR}/extra-patch-libs__bytestreamutils.h \
|
|||||||
.endif
|
.endif
|
||||||
|
|
||||||
post-patch:
|
post-patch:
|
||||||
.for f in CC CXX CFLAGS LOCALBASE PTHREAD_CFLAGS PTHREAD_LIBS X11BASE
|
|
||||||
@${REINPLACE_CMD} -i '' -e 's|%%${f}%%|${${f}}|g' ${WRKSRC}/SConstruct
|
|
||||||
.endfor
|
|
||||||
@${REINPLACE_CMD} -e 's/-ldl//' ${WRKSRC}/SConscript
|
@${REINPLACE_CMD} -e 's/-ldl//' ${WRKSRC}/SConscript
|
||||||
@${GREP} -Rl 'defined[[:blank:]]*([[:blank:]]*__linux__[[:blank:]]*) || defined[[:blank:]]*([[:blank:]]*__APPLE__[[:blank:]]*)' ${WRKSRC} | \
|
@${GREP} -Rl 'defined[[:blank:]]*([[:blank:]]*__linux__[[:blank:]]*) || defined[[:blank:]]*([[:blank:]]*__APPLE__[[:blank:]]*)' ${WRKSRC} | \
|
||||||
${XARGS} ${REINPLACE_CMD} -e \
|
${XARGS} ${REINPLACE_CMD} -e \
|
||||||
's/\(defined[[:blank:]]*([[:blank:]]*__linux__[[:blank:]]*) || defined[[:blank:]]*([[:blank:]]*__APPLE__[[:blank:]]*)\)/\1 || defined (__FreeBSD__)/'
|
's/\(defined[[:blank:]]*([[:blank:]]*__linux__[[:blank:]]*) || defined[[:blank:]]*([[:blank:]]*__APPLE__[[:blank:]]*)\)/\1 || defined (__FreeBSD__)/'
|
||||||
|
|
||||||
do-build:
|
do-build:
|
||||||
cd ${WRKSRC} && scons && ${PYTHON_CMD} install.py
|
cd ${WRKSRC} && scons ${MAKE_ENV} && ${PYTHON_CMD} install.py
|
||||||
${CP} -R ${WRKDIR}/${PORTNAME}_gamepacks/* ${WRKSRC}/install
|
${CP} -R ${WRKDIR}/${PORTNAME}_gamepacks/* ${WRKSRC}/install
|
||||||
|
|
||||||
do-install:
|
do-install:
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
--- SConstruct.orig Fri Feb 10 19:01:20 2006
|
--- SConstruct.orig Fri Feb 10 19:01:20 2006
|
||||||
+++ SConstruct Tue Feb 21 12:46:47 2006
|
+++ SConstruct Tue May 30 22:35:47 2006
|
||||||
@@ -3,7 +3,6 @@
|
@@ -3,7 +3,6 @@
|
||||||
|
|
||||||
import commands, re, sys, os, pickle, string, popen2
|
import commands, re, sys, os, pickle, string, popen2
|
||||||
@ -8,54 +8,73 @@
|
|||||||
|
|
||||||
# to access some internal stuff
|
# to access some internal stuff
|
||||||
import SCons
|
import SCons
|
||||||
@@ -85,10 +84,10 @@
|
@@ -11,7 +10,7 @@
|
||||||
|
conf_filename='site.conf'
|
||||||
|
# there is a default hardcoded value, you can override on command line, those are saved between runs
|
||||||
|
# we only handle strings
|
||||||
|
-serialized=['CC', 'CXX', 'JOBS', 'BUILD', 'SETUP']
|
||||||
|
+serialized=['CC', 'CXX', 'CCFLAGS', 'CXXFLAGS', 'LINKFLAGS', 'PTHREAD_LIBS', 'LOCALBASE', 'X11BASE', 'JOBS', 'BUILD', 'SETUP']
|
||||||
|
|
||||||
# default settings -------------------------------
|
# help -------------------------------------------
|
||||||
|
|
||||||
-CC='gcc'
|
@@ -64,14 +63,7 @@
|
||||||
-CXX='g++'
|
# TODO: detect Darwin / OSX
|
||||||
+CC='%%CC%%'
|
|
||||||
+CXX='%%CXX%%'
|
# CPU type
|
||||||
JOBS='1'
|
-g_cpu = commands.getoutput('uname -m')
|
||||||
-BUILD='debug'
|
-exp = re.compile('.*i?86.*')
|
||||||
+BUILD='release'
|
-if (g_cpu == 'Power Macintosh' or g_cpu == 'ppc'):
|
||||||
INSTALL='#install'
|
- g_cpu = 'ppc'
|
||||||
SETUP='0'
|
-elif exp.match(g_cpu):
|
||||||
g_build_root = 'build'
|
- g_cpu = 'x86'
|
||||||
@@ -172,9 +171,9 @@
|
-else:
|
||||||
|
- g_cpu = 'cpu'
|
||||||
|
+g_cpu = 'cpu'
|
||||||
|
|
||||||
|
# OS
|
||||||
|
OS = commands.getoutput('uname')
|
||||||
|
@@ -172,8 +164,8 @@
|
||||||
# common flags
|
# common flags
|
||||||
warningFlags = '-W -Wall -Wcast-align -Wcast-qual -Wno-unused-parameter '
|
warningFlags = '-W -Wall -Wcast-align -Wcast-qual -Wno-unused-parameter '
|
||||||
warningFlagsCXX = '-Wno-non-virtual-dtor -Wreorder ' # -Wold-style-cast
|
warningFlagsCXX = '-Wno-non-virtual-dtor -Wreorder ' # -Wold-style-cast
|
||||||
-CCFLAGS = '' + warningFlags
|
-CCFLAGS = '' + warningFlags
|
||||||
-CXXFLAGS = '-pipe -DQ_NO_STLPORT ' + warningFlags + warningFlagsCXX
|
-CXXFLAGS = '-pipe -DQ_NO_STLPORT ' + warningFlags + warningFlagsCXX
|
||||||
-CPPPATH = []
|
+CCFLAGS += ' '
|
||||||
+CCFLAGS = '%%CFLAGS%% '
|
+CXXFLAGS += ' -pipe -DQ_NO_STLPORT '
|
||||||
+CXXFLAGS = '%%CFLAGS%% -pipe -DQ_NO_STLPORT '
|
CPPPATH = []
|
||||||
+CPPPATH = ['%%LOCALBASE%%/include', '%%X11BASE%%/include']
|
|
||||||
if (BUILD == 'debug'):
|
if (BUILD == 'debug'):
|
||||||
CXXFLAGS += '-g -D_DEBUG '
|
CXXFLAGS += '-g -D_DEBUG '
|
||||||
CCFLAGS += '-g -D_DEBUG '
|
@@ -190,7 +182,6 @@
|
||||||
@@ -190,7 +189,7 @@
|
|
||||||
print 'Unknown build configuration ' + BUILD
|
print 'Unknown build configuration ' + BUILD
|
||||||
sys.exit( 0 )
|
sys.exit( 0 )
|
||||||
|
|
||||||
-LINKFLAGS = ''
|
-LINKFLAGS = ''
|
||||||
+LINKFLAGS = '-L%%LOCALBASE%%/lib -L%%X11BASE%%/lib '
|
|
||||||
if ( OS == 'Linux' ):
|
if ( OS == 'Linux' ):
|
||||||
|
|
||||||
# static
|
# static
|
||||||
@@ -270,7 +269,9 @@
|
@@ -218,6 +209,12 @@
|
||||||
|
CPPPATH.append('/sw/include')
|
||||||
|
CPPPATH.append('/usr/X11R6/include')
|
||||||
|
LINKFLAGS += '-L/sw/lib -L/usr/lib -L/usr/X11R6/lib '
|
||||||
|
+elif ( OS == 'FreeBSD' ):
|
||||||
|
+ CCFLAGS += '-fPIC '
|
||||||
|
+ CXXFLAGS += '-fPIC '
|
||||||
|
+ CPPPATH.append(LOCALBASE + '/include')
|
||||||
|
+ CPPPATH.append(X11BASE + '/include')
|
||||||
|
+ LINKFLAGS += '-L' + LOCALBASE + '/lib ' + '-L' + X11BASE + '/lib '
|
||||||
|
|
||||||
|
CPPPATH.append('libs')
|
||||||
|
|
||||||
|
@@ -269,6 +266,8 @@
|
||||||
|
def usePThread(self):
|
||||||
if ( OS == 'Darwin' ):
|
if ( OS == 'Darwin' ):
|
||||||
self['LINKFLAGS'] += '-lpthread -Wl,-stack_size,0x400000 '
|
self['LINKFLAGS'] += '-lpthread -Wl,-stack_size,0x400000 '
|
||||||
|
+ elif ( OS == 'FreeBSD' ):
|
||||||
|
+ self['LINKFLAGS'] += PTHREAD_LIBS
|
||||||
else:
|
else:
|
||||||
- self['LINKFLAGS'] += '-lpthread '
|
self['LINKFLAGS'] += '-lpthread '
|
||||||
+ self['CCFLAGS'] += '%%PTHREAD_CFLAGS%% '
|
|
||||||
+ self['CXXFLAGS'] += '%%PTHREAD_CFLAGS%% '
|
|
||||||
+ self['LINKFLAGS'] += '%%PTHREAD_LIBS%% '
|
|
||||||
|
|
||||||
def CheckLDD(self, target, source, env):
|
@@ -278,7 +277,7 @@
|
||||||
file = target[0]
|
|
||||||
@@ -278,7 +279,7 @@
|
|
||||||
print('ERROR: CheckLDD: target %s not found\n' % target[0])
|
print('ERROR: CheckLDD: target %s not found\n' % target[0])
|
||||||
Exit(1)
|
Exit(1)
|
||||||
# not using os.popen3 as I want to check the return code
|
# not using os.popen3 as I want to check the return code
|
||||||
|
@ -153,12 +153,12 @@ bin/gtkradiant
|
|||||||
%%DATADIR%%/q3bp.game/default_build_menu.xml
|
%%DATADIR%%/q3bp.game/default_build_menu.xml
|
||||||
%%DATADIR%%/q3bp.game/game.xlink
|
%%DATADIR%%/q3bp.game/game.xlink
|
||||||
%%DATADIR%%/q3data.qdt
|
%%DATADIR%%/q3data.qdt
|
||||||
%%DATADIR%%/q3data.x86
|
%%DATADIR%%/q3data.cpu
|
||||||
%%DATADIR%%/q3map2.x86
|
%%DATADIR%%/q3map2.cpu
|
||||||
%%DATADIR%%/q4.game/default_build_menu.xml
|
%%DATADIR%%/q4.game/default_build_menu.xml
|
||||||
%%DATADIR%%/q4.game/q4base/default_shaderlist.txt
|
%%DATADIR%%/q4.game/q4base/default_shaderlist.txt
|
||||||
%%DATADIR%%/qdata3
|
%%DATADIR%%/qdata3
|
||||||
%%DATADIR%%/radiant.x86
|
%%DATADIR%%/radiant.cpu
|
||||||
%%DATADIR%%/sof2.game/BehavEd.bhc
|
%%DATADIR%%/sof2.game/BehavEd.bhc
|
||||||
%%DATADIR%%/sof2.game/ChangeLog.txt
|
%%DATADIR%%/sof2.game/ChangeLog.txt
|
||||||
%%DATADIR%%/sof2.game/base/default_shaderlist.txt
|
%%DATADIR%%/sof2.game/base/default_shaderlist.txt
|
||||||
|
Loading…
Reference in New Issue
Block a user