patches/dangerdeep-01-sconstruct.diff
author jurikm
Sun, 12 Feb 2012 14:04:10 +0000
changeset 8245 383896da4129
parent 249 06a4361cf835
permissions -rw-r--r--
SFEsauerbraten.spec: add IPS package name
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
249
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
     1
diff -ur dangerdeep-0.2.0-orig/SConstruct dangerdeep-0.2.0/SConstruct
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
     2
--- dangerdeep-0.2.0-orig/SConstruct	2006-10-13 01:44:44.000000000 +0700
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
     3
+++ dangerdeep-0.2.0/SConstruct	2007-04-23 13:10:31.248136721 +0700
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
     4
@@ -115,6 +115,58 @@
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
     5
                         env.Append(LINKFLAGS = '--unresolved-symbols=ignore-all')
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
     6
                         env.Append(LINKFLAGS = '-Xlinker --unresolved-symbols -Xlinker ignore-all')
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
     7
 
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
     8
+elif (sys.platform == 'sunos5'):
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
     9
+	print "Compiling for Solaris Environment"
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    10
+	env = Environment(ENV = os.environ)
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    11
+	env.Replace(CC = os.environ['CC'])
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    12
+	env.Replace(CXX = os.environ['CXX'])
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    13
+	env.Replace(CCFLAGS = os.environ['CFLAGS'])
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    14
+	env.Replace(CXXFLAGS = os.environ['CXXFLAGS'])
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    15
+	env.Replace(LINKFLAGS = os.environ['LDFLAGS'])
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    16
+	env.Append(CPPPATH = ['/usr/include/SDL', '/usr/include/GL'])
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    17
+	libpath = ['/usr/X11R6/lib']
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    18
+	gllibs = ['GL', 'GLU']
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    19
+	sdllibs = ['SDL', 'SDL_image']
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    20
+	ccflags = '`sdl-config --cflags` -I/usr/X11/include'
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    21
+	env.Append(LINKFLAGS = '-L/usr/X11/lib')
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    22
+	mmxsupported = False
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    23
+	ssesupported = False
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    24
+	if (usex86sse == 0) and (mmxsupported and ssesupported):
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    25
+		usex86sse = 1
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    26
+	if usex86sse >= 1:
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    27
+		env.Append(CPPDEFINES = ['USE_SSE'])
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    28
+		osspecificsrc += ['water_sse.cpp']
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    29
+		if (usex86sse >= 3):
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    30
+			env.Append(CPPDEFINES = ['USE_SSE_INTRINSICS', 'USE_SSE_ALWAYS'])
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    31
+			env.Append(CCFLAGS = '-msse')
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    32
+			print 'Using x86 SSE/MMX optimizations with GCC intrinsics ALWAYS WITHOUT DETECTION!'
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    33
+		elif (usex86sse >= 2):
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    34
+			env.Append(CPPDEFINES = ['USE_SSE_INTRINSICS'])
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    35
+			env.Append(CCFLAGS = '-msse')
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    36
+			print 'Using x86 SSE/MMX optimizations with GCC intrinsics.'
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    37
+		else:
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    38
+			print 'Using x86 SSE/MMX optimizations.'
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    39
+	env.Append(CCFLAGS = ccflags)
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    40
+	datadir = '/usr/share/dangerdeep'
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    41
+	build_dir = 'sunos5'
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    42
+	# check for broken libGL, ignore undefined symbols then
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    43
+	if (os.system('grep glBindProgram /usr/include/GL/gl*.h > /dev/null') == 0):
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    44
+		gllibdirs = ['/usr/X11/lib/', '/usr/lib/']
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    45
+		gllibdir = ''
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    46
+		for i in gllibdirs:
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    47
+			if (os.system('test -f '+i+'libGL.so') == 0):
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    48
+				gllibdir = i
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    49
+				break
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    50
+		if (gllibdir == ''):
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    51
+			print 'ERROR: no libGL.so detected!'
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    52
+		else:
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    53
+			print 'Found GL library "'+gllibdir+'libGL.so"'
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    54
+		if (os.system('grep glBindProgram '+gllibdir+'libGL.so > /dev/null') != 0):
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    55
+			print 'GL headers declare glBindProgram, but libGL.so has no such symbol! Ignoring all undefined symbols...'
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    56
+			# I'm not sure which option will hopefully fix the problem... so i use both...
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    57
+			env.Append(LINKFLAGS = ' -z ignore')
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    58
+
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    59
+
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    60
 else:
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    61
 	print "Compiling for Unix/Posix/Linux Environment"
06a4361cf835 2007-04-23 Doug Scott <[email protected]>
drdoug007
parents:
diff changeset
    62
 	env = Environment(ENV = os.environ)