diff options
Diffstat (limited to 'configure')
-rwxr-xr-x | configure | 120 |
1 files changed, 120 insertions, 0 deletions
diff --git a/configure b/configure new file mode 100755 index 0000000..836c6e0 --- /dev/null +++ b/configure | |||
@@ -0,0 +1,120 @@ | |||
1 | #!/bin/bash | ||
2 | |||
3 | ####################################################################### | ||
4 | # OS Setup Routines | ||
5 | ####################################################################### | ||
6 | setup_win32() | ||
7 | { | ||
8 | echo "Build environment... Microsoft Windows"; | ||
9 | BUILD_FOR='Win32' | ||
10 | PORTAUDIO_MAKEOPTS='-lwinmm' | ||
11 | MORELIBS="$MORELIBS -lwinmm -mwindows" | ||
12 | # MOREDEPS="$MOREDEPS \$(BINDIR)nojack.o" | ||
13 | } | ||
14 | |||
15 | |||
16 | setup_linux_gnu() | ||
17 | { | ||
18 | echo "Build environment... GNU/Linux"; | ||
19 | BUILD_FOR='LinuxGNU' | ||
20 | PORTAUDIO_MAKEOPTS='-pthread' | ||
21 | } | ||
22 | |||
23 | |||
24 | setup_linux_win32() | ||
25 | { | ||
26 | echo "Build environment... Microsoft Windows (Linux)" | ||
27 | BUILD_FOR='Win32Linux' | ||
28 | PORTAUDIO_MAKEOPTS='-lwinmm' | ||
29 | GCC='i586-mingw32msvc-gcc' | ||
30 | } | ||
31 | |||
32 | |||
33 | setup_darwin() | ||
34 | { | ||
35 | echo "Build environment... Macintosh OS X"; | ||
36 | BUILD_FOR='Darwin' | ||
37 | JACK_MAKEOPTS='-L/sw/lib -I/sw/include' | ||
38 | PORTAUDIO_MAKEOPTS='-L/sw/lib -I/sw/include' | ||
39 | export CFLAGS="-no-cpp-precomp -arch ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk" | ||
40 | export CXXFLAGS="-no-cpp-precomp -arch ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk" | ||
41 | } | ||
42 | |||
43 | |||
44 | ####################################################################### | ||
45 | # Library Tests | ||
46 | ####################################################################### | ||
47 | find_fltk() | ||
48 | { | ||
49 | TEST=`fltk-config --version | awk \ | ||
50 | 'BEGIN {FS="=";version="Unavailable"} 1==1 {version=$1} END {print version}'` | ||
51 | |||
52 | if [ $? == 0 ]; then | ||
53 | echo "Searching for FLTK... found $TEST" | ||
54 | TMPCCARGS="$TMPCCARGS -DLIBFLTK=\"$TEST\"" | ||
55 | else | ||
56 | echo "Searching for FLTK... not found" | ||
57 | echo "Can't continue." | ||
58 | exit 1 | ||
59 | fi | ||
60 | } | ||
61 | |||
62 | |||
63 | ####################################################################### | ||
64 | # Main Configure Routine | ||
65 | ####################################################################### | ||
66 | main() | ||
67 | { | ||
68 | [[ -e Makefile ]] && make clean | ||
69 | |||
70 | MORELIBS='' # Extra libraries | ||
71 | MOREDEPS='' # Extra dependencies | ||
72 | BUILD_FOR='' # Build architecture | ||
73 | GCC='gcc' # GCC Command (different if building Win32 on Linux) | ||
74 | TMPCCARGS='' # Extra CC Arguments | ||
75 | |||
76 | # Check for Windows | ||
77 | if [[ $BUILD_FOR == '' && \ | ||
78 | ($WINDIR == "C:\\WINNT" || $WINDIR == "C:\\WINDOWS") ]]; | ||
79 | then | ||
80 | setup_win32 | ||
81 | fi | ||
82 | |||
83 | # Check for Linux or Win32 building on Linux | ||
84 | if [[ $BUILD_FOR == '' && \ | ||
85 | `if [ -e /proc/version ]; then cat /proc/version | grep Linux; fi` != "" ]] | ||
86 | then | ||
87 | if [ "$1" = "--os=win32" ]; then | ||
88 | setup_linux_win32 | ||
89 | else | ||
90 | setup_linux_gnu | ||
91 | fi | ||
92 | fi | ||
93 | |||
94 | # Check for Mac OS X | ||
95 | if [[ $BUILD_FOR == '' && \ | ||
96 | ("`echo $version|grep powerpc-apple-darwin`" != "" || \ | ||
97 | "`echo $OSTYPE|grep darwin`" != "") ]] | ||
98 | then | ||
99 | setup_darwin $1 | ||
100 | fi | ||
101 | |||
102 | # Check for Essential Libraries | ||
103 | find_fltk | ||
104 | |||
105 | # Create the Makefile | ||
106 | echo "BUILD_ARCH=$BUILD_FOR" > Makefile | ||
107 | echo "MORELIBS=$MORELIBS" >> Makefile | ||
108 | echo "MOREDEPS=$MOREDEPS" >> Makefile | ||
109 | echo "TMPCCARGS=$TMPCCARGS" >> Makefile | ||
110 | |||
111 | if [[ $1 == '--with-universal' ]]; then | ||
112 | echo "UNIVERSAL=true" >> Makefile | ||
113 | fi | ||
114 | |||
115 | cat Makefile.in >> Makefile | ||
116 | |||
117 | echo -e "\nConfiguration complete. If all looked OK, now run make."; | ||
118 | } | ||
119 | |||
120 | main $1 | ||