annotate build-scripts/fatbuild.sh @ 1741:d67622addf51

fatbuild fixes: - A change to define CXX in fatbuild, which comforts the configure script a little, even if we don't use C++ anywhere. - Some code to see how many CPU cores exist and parallelize make across them. - CFLAGS that apply to both archs are specified seperately (-O3, -pipe, etc) - -fvisibility=hidden for the gcc4 builds - a "clean", "clean-ppc" and "clean-x86" command - Fix to SDL_config_macosx.h for the HAVE_ALLOCA_H thing. Now builds on an Intel Mac.
author Ryan C. Gordon <icculus@icculus.org>
date Thu, 27 Apr 2006 11:18:03 +0000
parents 3a3e847aadb9
children af4352da64d8
rev   line source
1636
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
1 #!/bin/sh
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
2 #
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
3 # Build a fat binary on Mac OS X, thanks Ryan!
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
4
1741
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
5 # Number of CPUs (for make -j)
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
6 #NCPU=1
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
7 NCPU=`sysctl -n hw.ncpu`
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
8
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
9 # !!! FIXME: other CFLAGS?
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
10 # Generic, cross-platform CFLAGS you always want go here.
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
11 CFLAGS="-O3 -g -pipe"
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
12
1636
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
13 # PowerPC compiler flags (10.2 runtime compatibility)
1739
3a3e847aadb9 Trying to fix fatbuild.sh on intel
Sam Lantinga <slouken@libsdl.org>
parents: 1648
diff changeset
14 CC_PPC="gcc-3.3 -arch ppc"
1741
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
15 CXX_PPC="g++-3.3 -arch ppc"
1739
3a3e847aadb9 Trying to fix fatbuild.sh on intel
Sam Lantinga <slouken@libsdl.org>
parents: 1648
diff changeset
16 CFLAGS_PPC=""
1648
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
17 CPPFLAGS_PPC="-DMAC_OS_X_VERSION_MIN_REQUIRED=1020 \
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
18 -nostdinc \
1636
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
19 -F/Developer/SDKs/MacOSX10.2.8.sdk/System/Library/Frameworks \
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
20 -I/Developer/SDKs/MacOSX10.2.8.sdk/usr/include/gcc/darwin/3.3 \
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
21 -isystem /Developer/SDKs/MacOSX10.2.8.sdk/usr/include"
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
22
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
23 # PowerPC linker flags
1648
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
24 LFLAGS_PPC="-arch ppc \
1636
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
25 -L/Developer/SDKs/MacOSX10.2.8.sdk/usr/lib/gcc/darwin/3.3 \
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
26 -F/Developer/SDKs/MacOSX10.2.8.sdk/System/Library/Frameworks \
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
27 -Wl,-syslibroot,/Developer/SDKs/MacOSX10.2.8.sdk"
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
28
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
29 # Intel compiler flags (10.4 runtime compatibility)
1739
3a3e847aadb9 Trying to fix fatbuild.sh on intel
Sam Lantinga <slouken@libsdl.org>
parents: 1648
diff changeset
30 CC_X86="gcc-4.0 -arch i386"
1741
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
31 CXX_X86="g++-4.0 -arch i386"
1739
3a3e847aadb9 Trying to fix fatbuild.sh on intel
Sam Lantinga <slouken@libsdl.org>
parents: 1648
diff changeset
32 CFLAGS_X86="-mmacosx-version-min=10.4"
1648
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
33 CPPFLAGS_X86="-DMAC_OS_X_VERSION_MIN_REQUIRED=1040 \
1741
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
34 -nostdinc -fvisibility=hidden \
1648
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
35 -F/Developer/SDKs/MacOSX10.4u.sdk/System/Library/Frameworks \
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
36 -I/Developer/SDKs/MacOSX10.4u.sdk/usr/lib/gcc/i686-apple-darwin8/4.0.1/include \
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
37 -isystem /Developer/SDKs/MacOSX10.4u.sdk/usr/include"
1636
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
38
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
39 # Intel linker flags
1639
0f466fb614a9 Whoops, need the actual flags here
Sam Lantinga <slouken@libsdl.org>
parents: 1636
diff changeset
40 LFLAGS_X86="-arch i386 -mmacosx-version-min=10.4 \
1636
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
41 -L/Developer/SDKs/MacOSX10.4u.sdk/usr/lib/gcc/i686-apple-darwin8/4.0.0 \
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
42 -Wl,-syslibroot,/Developer/SDKs/MacOSX10.4u.sdk"
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
43
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
44 #
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
45 # Find the configure script
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
46 #
1648
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
47 srcdir=`dirname $0`/..
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
48 auxdir=$srcdir/build-scripts
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
49 cd $srcdir
1636
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
50
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
51 #
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
52 # Figure out which phase to build:
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
53 # all,
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
54 # configure, configure-ppc, configure-x86,
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
55 # make, make-ppc, make-x86, merge
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
56 # install
1741
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
57 # clean
1636
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
58 if test x"$1" = x; then
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
59 phase=all
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
60 else
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
61 phase="$1"
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
62 fi
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
63 case $phase in
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
64 all)
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
65 configure_ppc="yes"
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
66 configure_x86="yes"
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
67 make_ppc="yes"
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
68 make_x86="yes"
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
69 merge="yes"
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
70 ;;
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
71 configure)
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
72 configure_ppc="yes"
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
73 configure_x86="yes"
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
74 ;;
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
75 configure-ppc)
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
76 configure_ppc="yes"
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
77 ;;
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
78 configure-x86)
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
79 configure_x86="yes"
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
80 ;;
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
81 make)
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
82 make_ppc="yes"
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
83 make_x86="yes"
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
84 merge="yes"
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
85 ;;
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
86 make-ppc)
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
87 make_ppc="yes"
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
88 ;;
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
89 make-x86)
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
90 make_x86="yes"
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
91 ;;
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
92 merge)
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
93 merge="yes"
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
94 ;;
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
95 install)
1648
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
96 install_bin="yes"
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
97 install_hdrs="yes"
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
98 install_lib="yes"
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
99 install_data="yes"
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
100 install_man="yes"
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
101 ;;
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
102 install-bin)
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
103 install_bin="yes"
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
104 ;;
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
105 install-hdrs)
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
106 install_hdrs="yes"
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
107 ;;
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
108 install-lib)
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
109 install_lib="yes"
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
110 ;;
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
111 install-data)
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
112 install_data="yes"
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
113 ;;
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
114 install-man)
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
115 install_man="yes"
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
116 ;;
1741
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
117 clean)
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
118 clean_ppc="yes"
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
119 clean_x86="yes"
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
120 ;;
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
121 clean-ppc)
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
122 clean_ppc="yes"
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
123 ;;
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
124 clean-x86)
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
125 clean_x86="yes"
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
126 ;;
1648
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
127 *)
1741
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
128 echo "Usage: $0 [all|configure[-ppc|-x86]|make[-ppc|-x86]|merge|install|clean]"
1648
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
129 exit 1
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
130 ;;
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
131 esac
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
132 case `uname -p` in
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
133 powerpc)
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
134 native_path=ppc
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
135 ;;
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
136 *86)
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
137 native_path=x86
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
138 ;;
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
139 *)
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
140 echo "Couldn't figure out native architecture path"
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
141 exit 1
1636
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
142 ;;
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
143 esac
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
144
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
145 #
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
146 # Create the build directories
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
147 #
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
148 for dir in build build/ppc build/x86; do
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
149 if test -d $dir; then
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
150 :
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
151 else
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
152 mkdir $dir || exit 1
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
153 fi
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
154 done
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
155
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
156 #
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
157 # Build the PowerPC binary
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
158 #
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
159 if test x$configure_ppc = xyes; then
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
160 (cd build/ppc && \
1741
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
161 sh ../../configure --build=`uname -p`-apple-darwin --host=powerpc-apple-darwin CC="$CC_PPC" CXX="$CXX_PPC" CFLAGS="$CFLAGS $CFLAGS_PPC" CPPFLAGS="$CPPFLAGS_PPC" LDFLAGS="$LFLAGS_PPC") || exit 2
1636
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
162 fi
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
163 if test x$make_ppc = xyes; then
1741
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
164 (cd build/ppc && make -j$NCPU) || exit 3
1636
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
165 fi
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
166
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
167 #
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
168 # Build the Intel binary
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
169 #
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
170 if test x$configure_x86 = xyes; then
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
171 (cd build/x86 && \
1741
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
172 sh ../../configure --build=`uname -p`-apple-darwin --host=i686-apple-darwin CC="$CC_X86" CXX="$CXX_X86" CFLAGS="$CFLAGS $CFLAGS_X86" CPPFLAGS="$CPPFLAGS_X86" LDFLAGS="$LFLAGS_X86") || exit 2
1636
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
173 fi
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
174 if test x$make_x86 = xyes; then
1741
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
175 (cd build/x86 && make -j$NCPU) || exit 3
1636
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
176 fi
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
177
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
178 #
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
179 # Combine into fat binary
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
180 #
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
181 if test x$merge = xyes; then
1648
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
182 output=.libs
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
183 sh $auxdir/mkinstalldirs build/$output
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
184 cd build
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
185 target=`find . -mindepth 3 -type f -name '*.dylib' | head -1 | sed 's|.*/||'`
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
186 (lipo -create -o $output/$target `find . -mindepth 3 -type f -name "*.dylib"` &&
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
187 ln -sf $target $output/libSDL-1.2.0.dylib &&
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
188 ln -sf $target $output/libSDL.dylib &&
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
189 lipo -create -o $output/libSDL.a */build/.libs/libSDL.a &&
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
190 cp $native_path/build/.libs/libSDL.la $output &&
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
191 cp $native_path/build/.libs/libSDL.lai $output &&
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
192 cp $native_path/build/libSDL.la . &&
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
193 lipo -create -o libSDLmain.a */build/libSDLmain.a &&
1636
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
194 echo "Build complete!" &&
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
195 echo "Files can be found in the build directory.") || exit 4
1648
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
196 cd ..
1636
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
197 fi
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
198
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
199 #
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
200 # Install
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
201 #
1648
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
202 do_install()
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
203 {
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
204 echo $*
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
205 $* || exit 5
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
206 }
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
207 if test x$prefix = x; then
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
208 prefix=/usr/local
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
209 fi
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
210 if test x$exec_prefix = x; then
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
211 exec_prefix=$prefix
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
212 fi
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
213 if test x$bindir = x; then
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
214 bindir=$exec_prefix/bin
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
215 fi
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
216 if test x$libdir = x; then
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
217 libdir=$exec_prefix/lib
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
218 fi
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
219 if test x$includedir = x; then
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
220 includedir=$prefix/include
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
221 fi
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
222 if test x$datadir = x; then
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
223 datadir=$prefix/share
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
224 fi
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
225 if test x$mandir = x; then
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
226 mandir=$prefix/man
1636
3d0dec74ad01 A script to build a fat version of the SDL library... completely untested!
Sam Lantinga <slouken@libsdl.org>
parents:
diff changeset
227 fi
1648
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
228 if test x$install_bin = xyes; then
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
229 do_install sh $auxdir/mkinstalldirs $bindir
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
230 do_install /usr/bin/install -c -m 755 build/$native_path/sdl-config $bindir/sdl-config
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
231 fi
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
232 if test x$install_hdrs = xyes; then
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
233 do_install sh $auxdir/mkinstalldirs $includedir/SDL
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
234 for src in $srcdir/include/*.h; do \
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
235 file=`echo $src | sed -e 's|^.*/||'`; \
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
236 do_install /usr/bin/install -c -m 644 $src $includedir/SDL/$file; \
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
237 done
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
238 do_install /usr/bin/install -c -m 644 $srcdir/include/SDL_config_macosx.h $includedir/SDL/SDL_config.h
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
239 fi
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
240 if test x$install_lib = xyes; then
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
241 do_install sh $auxdir/mkinstalldirs $libdir
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
242 do_install sh build/$native_path/libtool --mode=install /usr/bin/install -c build/libSDL.la $libdir/libSDL.la
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
243 do_install /usr/bin/install -c -m 644 build/libSDLmain.a $libdir/libSDLmain.a
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
244 do_install ranlib $libdir/libSDLmain.a
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
245 fi
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
246 if test x$install_data = xyes; then
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
247 do_install sh $auxdir/mkinstalldirs $datadir/aclocal
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
248 do_install /usr/bin/install -c -m 644 $srcdir/sdl.m4 $datadir/aclocal/sdl.m4
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
249 fi
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
250 if test x$install_man = xyes; then
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
251 do_install sh $auxdir/mkinstalldirs $mandir/man3
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
252 for src in $srcdir/docs/man3/*.3; do \
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
253 file=`echo $src | sed -e 's|^.*/||'`; \
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
254 do_install /usr/bin/install -c -m 644 $src $mandir/man3/$file; \
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
255 done
9f59d4c5aaea Mac OS X fat build works! :)
Sam Lantinga <slouken@libsdl.org>
parents: 1646
diff changeset
256 fi
1741
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
257
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
258 #
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
259 # Clean up
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
260 #
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
261 do_clean()
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
262 {
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
263 echo $*
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
264 $* || exit 6
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
265 }
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
266 if test x$clean_x86 = xyes; then
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
267 do_clean rm -r build/x86
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
268 fi
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
269 if test x$clean_ppc = xyes; then
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
270 do_clean rm -r build/ppc
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
271 fi
d67622addf51 fatbuild fixes:
Ryan C. Gordon <icculus@icculus.org>
parents: 1739
diff changeset
272