config.lib
author rubidium
Sun, 02 Sep 2007 11:17:33 +0000
branchnoai
changeset 9701 d1ac22c62f64
parent 9694 e72987579514
child 9703 d2a6acdbd665
permissions -rw-r--r--
(svn r11036) [NoAI] -Sync: with trunk r10774:11035.
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
     1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
     2
log() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
     3
	if [ $1 = "1" ]; then echo "$2"; fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
     4
	echo "$2" >> $config_log
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
     5
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
     6
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
     7
set_default() {
9626
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
     8
	released_version=""
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
     9
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    10
	ignore_extra_parameters="0"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    11
	# We set all kinds of defaults for params. Later on the user can override
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    12
	# most of them; but if they don't, this default is used.
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    13
	build=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    14
	host=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    15
	cc_build=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    16
	cc_host=""
5838
9c3129cb019b (svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b.
rubidium
parents: 5829
diff changeset
    17
	cxx_build=""
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    18
	cxx_host=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    19
	windres=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    20
	strip=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    21
	lipo=""
6407
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
    22
	awk="awk"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    23
	os="DETECT"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    24
	endian="AUTO"
9363
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
    25
	cpu_type="DETECT"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    26
	revision=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    27
	config_log="config.log"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    28
	prefix_dir="/usr/local"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    29
	binary_dir="games"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    30
	data_dir="share/games/openttd"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    31
	icon_dir="share/pixmaps"
9628
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
    32
	personal_dir="1"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    33
	install_dir="/"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    34
	enable_debug="0"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    35
	enable_profiling="0"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    36
	enable_dedicated="0"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    37
	enable_network="1"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    38
	enable_static="1"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    39
	enable_translator="0"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    40
	enable_assert="1"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    41
	enable_strip="1"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    42
	enable_universal="1"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    43
	enable_osx_g5="0"
6554
28f436faed81 (svn r9030) [Config] -Add: added --enable-unicode, which enables unicode (mostly for windows). Enabled by default on WIN32 (makes win9x fail, so use --disable-unicode if you produce binaries for win9x)
truelight
parents: 6546
diff changeset
    44
	enable_unicode="1"
9626
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
    45
	with_distcc="1"
9628
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
    46
	with_ccache="1"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    47
	with_osx_sysroot="1"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    48
	with_application_bundle="1"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    49
	with_sdl="1"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    50
	with_cocoa="1"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    51
	with_zlib="1"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    52
	with_png="1"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    53
	with_makedepend="1"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    54
	with_direct_music="1"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    55
	with_sort="1"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    56
	with_iconv="1"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    57
	with_midi=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    58
	with_midi_arg=""
6360
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
    59
	with_libtimidity="1"
5829
a356a4da6526 (svn r8019) -Fix (r7759): if libfreetype was not found (and not forced to be used), the configure script aborted instead of marking it a 'not found'.
rubidium
parents: 5811
diff changeset
    60
	with_freetype="1"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    61
	with_fontconfig="1"
6212
39deaa03d180 (svn r8633) [PSP] -Fix r8629: mixed psp-config and pspconfig, making ./configure --reconfig to fail
truelight
parents: 6211
diff changeset
    62
	with_psp_config="1"
9621
7654501cf02d (svn r9821) [NoAI] -Fix: support compilation without threads.
rubidium
parents: 9601
diff changeset
    63
	with_threads="1"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    64
9694
e72987579514 (svn r10775) [NoAI] -Sync: with trunk r10535:r10774.
rubidium
parents: 9641
diff changeset
    65
	save_params_array="build host cc_build cc_host cxx_build cxx_host windres strip awk lipo os cpu_type revision endian config_log prefix_dir binary_dir data_dir icon_dir personal_dir install_dir enable_debug enable_profiling enable_dedicated enable_network enable_static enable_translator enable_assert enable_strip with_distcc with_osx_sysroot enable_universal enable_osx_g5 enable_unicode with_application_bundle with_sdl with_cocoa with_zlib with_png with_makedepend with_direct_music with_sort with_iconv with_midi with_midi_arg with_libtimidity with_freetype with_fontconfig with_psp_config with_threads CC CXX CFLAGS LDFLAGS"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    66
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    67
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    68
detect_params() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    69
	# Walk over all params from the user and override any default settings if
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    70
	#  needed. This also handles any invalid option.
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
    71
	for p in "$@"; do
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
    72
		if [ -n "$prev_p" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    73
			eval "$prev_p=\$p"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    74
			prev_p=
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    75
			continue
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    76
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    77
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    78
		optarg=`expr "x$p" : 'x[^=]*=\(.*\)'`
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    79
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    80
		case "$p" in
5787
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
    81
			--help | -h)                  showhelp; exit 0;;
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    82
5787
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
    83
			--config-log)                 prev_p="config_log";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
    84
			--config-log=*)               config_log="$optarg";;
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
    85
5787
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
    86
			--build)                      prev_p="build";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
    87
			--build=*)                    build="$optarg";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
    88
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
    89
			--host)                       prev_p="host";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
    90
			--host=*)                     host="$optarg";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
    91
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
    92
			--os)                         prev_p="os";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
    93
			--os=*)                       os="$optarg";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
    94
9363
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
    95
			--cpu-type)                   prev_p="cpu_type";;
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
    96
			--cpu-type=*)                 cpu_type="$optarg";;
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
    97
5787
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
    98
			--revision=*)                 revision="$optarg";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
    99
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   100
			--cc-build)                   prevp_p="cc_build";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   101
			--cc-build=*)                 cc_build="$optarg";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   102
			--cc-host)                    prevp_p="cc_host";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   103
			--cc-host=*)                  cc_host="$optarg";;
5838
9c3129cb019b (svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b.
rubidium
parents: 5829
diff changeset
   104
			--cxx-build)                  prevp_p="cxx_build";;
9c3129cb019b (svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b.
rubidium
parents: 5829
diff changeset
   105
			--cxx-build=*)                cxx_build="$optarg";;
5787
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   106
			--cxx-host)                   prevp_p="cxx_host";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   107
			--cxx-host=*)                 cxx_host="$optarg";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   108
			--windres)                    prevp_p="windres";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   109
			--windres=*)                  windres="$optarg";;
6407
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
   110
			--awk)                        prevp_p="awk";;
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
   111
			--awk=*)                      awk="$optarg";;
5787
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   112
			--strip)                      prevp_p="strip";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   113
			--strip=*)                    strip="$optarg";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   114
			--lipo)                       prevp_p="lipo";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   115
			--lipo=*)                     lipo="$optarg";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   116
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   117
			--endian)                     prev_p="endian";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   118
			--endian=*)                   endian="$optarg";;
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   119
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   120
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   121
5787
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   122
			--prefix-dir)                 prevp_p="prefix-dir";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   123
			--prefix-dir=*)               prefix_dir="$optarg";;
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   124
5787
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   125
			--binary-dir)                 prevp_p="binary-dir";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   126
			--binary-dir=*)               binary_dir="$optarg";;
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   127
5787
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   128
			--data-dir)                   prevp_p="data-dir";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   129
			--data-dir=*)                 data_dir="$optarg";;
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   130
5787
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   131
			--icon-dir)                   prevp_p="icon-dir";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   132
			--icon-dir=*)                 icon_dir="$optarg";;
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   133
5787
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   134
			--personal-dir)               prevp_p="personal-dir";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   135
			--personal-dir=*)             personal_dir="$optarg";;
9628
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   136
			--without-personal-dir)       personal_dir="";;
5787
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   137
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   138
			--install-dir)                prevp_p="install-dir";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   139
			--install-dir=*)              install_dir="$optarg";;
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   140
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   141
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   142
5787
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   143
			--enable-debug)               enable_debug="1";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   144
			--enable-debug=*)             enable_debug="$optarg";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   145
			--enable-profiling)           enable_profiling="1";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   146
			--enable-profiling=*)         enable_profiling="$optarg";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   147
			--enable-dedicated)           enable_dedicated="1";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   148
			--enable-dedicated=*)         enable_dedicated="$optarg";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   149
			--enable-network=*)           enable_network="$optarg";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   150
			--disable-network)            enable_network="0";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   151
			--disable-static)             enable_static="0";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   152
			--enable-static)              enable_static="2";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   153
			--enable-static=*)            enable_static="$optarg";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   154
			--disable-translator)         enable_translator="0";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   155
			--enable-translator)          enable_translator="2";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   156
			--enable-translator=*)        enable_translator="$optarg";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   157
			--disable-assert)             enable_assert="0";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   158
			--enable-assert)              enable_assert="2";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   159
			--enable-assert=*)            enable_assert="$optarg";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   160
			--disable-strip)              enable_strip="0";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   161
			--enable-strip)               enable_strip="2";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   162
			--enable-strip=*)             enable_strip="$optarg";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   163
			--disable-universal)          enable_universal="0";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   164
			--enable-universal)           enable_universal="2";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   165
			--enable-universal=*)         enable_universal="$optarg";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   166
			--disable-osx-g5)             enable_osx_g5="0";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   167
			--enable-osx-g5)              enable_osx_g5="2";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   168
			--enable-osx-g5=*)            enable_osx_g5="$optarg";;
6554
28f436faed81 (svn r9030) [Config] -Add: added --enable-unicode, which enables unicode (mostly for windows). Enabled by default on WIN32 (makes win9x fail, so use --disable-unicode if you produce binaries for win9x)
truelight
parents: 6546
diff changeset
   169
			--disable-unicode)            enable_unicode="0";;
28f436faed81 (svn r9030) [Config] -Add: added --enable-unicode, which enables unicode (mostly for windows). Enabled by default on WIN32 (makes win9x fail, so use --disable-unicode if you produce binaries for win9x)
truelight
parents: 6546
diff changeset
   170
			--enable-unicode)             enable_unicode="2";;
28f436faed81 (svn r9030) [Config] -Add: added --enable-unicode, which enables unicode (mostly for windows). Enabled by default on WIN32 (makes win9x fail, so use --disable-unicode if you produce binaries for win9x)
truelight
parents: 6546
diff changeset
   171
			--enable-unicode=*)           enable_unicode="$optarg";;
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   172
5787
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   173
			--with-sdl)                   with_sdl="2";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   174
			--without-sdl)                with_sdl="0";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   175
			--with-sdl=*)                 with_sdl="$optarg";;
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   176
5787
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   177
			--with-cocoa)                 with_cocoa="2";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   178
			--without-cocoa)              with_cocoa="0";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   179
			--with-cocoa=*)               with_cocoa="$optarg";;
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   180
5787
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   181
			--with-zlib)                  with_zlib="2";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   182
			--without-zlib)               with_zlib="0";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   183
			--with-zlib=*)                with_zlib="$optarg";;
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   184
5787
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   185
			--with-png)                   with_png="2";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   186
			--without-png)                with_png="0";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   187
			--with-png=*)                 with_png="$optarg";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   188
			--with-libpng)                with_png="2";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   189
			--without-libpng)             with_png="0";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   190
			--with-libpng=*)              with_png="$optarg";;
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   191
6360
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
   192
			--with-libtimidity)           with_libtimidity="2";;
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
   193
			--without-libtimidity)        with_libtimidity="0";;
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
   194
			--with-libtimidity=*)         with_libtimidity="$optarg";;
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
   195
5787
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   196
			--with-freetype)              with_freetype="2";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   197
			--without-freetype)           with_freetype="0";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   198
			--with-freetype=*)            with_freetype="$optarg";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   199
			--with-libfreetype)           with_freetype="2";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   200
			--without-libfreetype)        with_freetype="0";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   201
			--with-libfreetype=*)         with_freetype="$optarg";;
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   202
5787
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   203
			--with-fontconfig)            with_fontconfig="2";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   204
			--without-fontconfig)         with_fontconfig="0";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   205
			--with-fontconfig=*)          with_fontconfig="$optarg";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   206
			--with-libfontconfig)         with_fontconfig="2";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   207
			--without-libfontconfig)      with_fontconfig="0";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   208
			--with-libfontconfig=*)       with_fontconfig="$optarg";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   209
6212
39deaa03d180 (svn r8633) [PSP] -Fix r8629: mixed psp-config and pspconfig, making ./configure --reconfig to fail
truelight
parents: 6211
diff changeset
   210
			--with-psp-config)            with_psp_config="2";;
39deaa03d180 (svn r8633) [PSP] -Fix r8629: mixed psp-config and pspconfig, making ./configure --reconfig to fail
truelight
parents: 6211
diff changeset
   211
			--without-psp-config)         with_psp_config="0";;
39deaa03d180 (svn r8633) [PSP] -Fix r8629: mixed psp-config and pspconfig, making ./configure --reconfig to fail
truelight
parents: 6211
diff changeset
   212
			--with-psp-config=*)          with_psp_config="$optarg";;
6209
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
   213
5787
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   214
			--with-makedepend)            with_makedepend="2";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   215
			--without-makedepend)         with_makedepend="0";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   216
			--with-makedepend=*)          with_makedepend="$optarg";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   217
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   218
			--with-direct-music)          with_direct_music="2";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   219
			--without-direct-music)       with_direct_music="0";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   220
			--with-direct-music=*)        with_direct_music="$optarg";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   221
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   222
			--with-sort)                  with_sort="2";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   223
			--without-sort)               with_sort="0";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   224
			--with-sort=*)                with_sort="$optarg";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   225
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   226
			--with-iconv)                 with_iconv="2";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   227
			--without-iconv)              with_iconv="0";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   228
			--with-iconv=*)               with_iconv="$optarg";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   229
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   230
			--with-midi=*)                with_midi="$optarg";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   231
			--with-midi-arg=*)            with_midi_arg="$optarg";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   232
9626
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   233
			--without-distcc)             with_distcc="0";;
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   234
			--with-distcc)                with_distcc="2";;
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   235
			--with-distcc=*)              with_distcc="$optarg";;
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   236
9628
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   237
			--without-ccache)             with_ccache="0";;
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   238
			--with-ccache)                with_ccache="2";;
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   239
			--with-ccache=*)              with_ccache="$optarg";;
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   240
5787
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   241
			--without-osx-sysroot)        with_osx_sysroot="0";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   242
			--with-osx-sysroot)           with_osx_sysroot="2";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   243
			--with-osx-sysroot=*)         with_osx_sysroot="$optarg";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   244
9601
b499fdd106d5 (svn r9713) [NoAI] -Sync with trunk (r9631:9712).
rubidium
parents: 9569
diff changeset
   245
			--without-application-bundle) with_application_bundle="0";;
b499fdd106d5 (svn r9713) [NoAI] -Sync with trunk (r9631:9712).
rubidium
parents: 9569
diff changeset
   246
			--with-application-bundle)    with_application_bundle="1";;
b499fdd106d5 (svn r9713) [NoAI] -Sync with trunk (r9631:9712).
rubidium
parents: 9569
diff changeset
   247
			--with-application-bundle=*)  with_application_bundle="$optarg";;
5787
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   248
9621
7654501cf02d (svn r9821) [NoAI] -Fix: support compilation without threads.
rubidium
parents: 9601
diff changeset
   249
			--without-threads)            with_threads="0";;
7654501cf02d (svn r9821) [NoAI] -Fix: support compilation without threads.
rubidium
parents: 9601
diff changeset
   250
			--with-threads)               with_threads="1";;
7654501cf02d (svn r9821) [NoAI] -Fix: support compilation without threads.
rubidium
parents: 9601
diff changeset
   251
			--with-threads=*)             with_threads="$optarg";;
7654501cf02d (svn r9821) [NoAI] -Fix: support compilation without threads.
rubidium
parents: 9601
diff changeset
   252
5787
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   253
			CC=* | --CC=*)                CC="$optarg";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   254
			CXX=* | --CXX=*)              CXX="$optarg";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   255
			CFLAGS=* | --CFLAGS=*)        CFLAGS="$optarg";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   256
			LDFLAGS=* | --LDFLAGS=*)      LDFLAGS="$optarg";;
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   257
ed1903876f7d (svn r7877) Improve readability and shorten the configure script by 241 lines
tron
parents: 5766
diff changeset
   258
			--ignore-extra-parameters)    ignore_extra_parameters="1";;
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   259
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   260
			--*)
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   261
				if [ "$ignore_extra_parameters" = "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   262
					echo "Unknown option $p"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   263
					exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   264
				else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   265
					echo "Unknown option $p ignored"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   266
				fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   267
				;;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   268
		esac
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   269
	done
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   270
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   271
	if [ -n "$prev_p" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   272
		echo "configure: error: missing argument to --$prev_p"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   273
		exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   274
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   275
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   276
	# Clean the logfile
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   277
	echo "" > $config_log
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   278
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   279
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   280
save_params() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   281
	# Here we save all params, so we can later on do an exact redo of this
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   282
	#  configuration, without having the user to re-input stuff
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   283
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   284
	echo "Running configure with following options:" >> $config_log
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   285
	echo "" >> $config_log
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   286
6572
e35266003390 (svn r9049) -Fix [Config]: when running 'bash configure', make sure automated reconfigures run 'bash configure' too.
truelight
parents: 6570
diff changeset
   287
	configure="$CONFIGURE_EXECUTABLE --ignore-extra-parameters"
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   288
	for p in $save_params_array; do
5811
cb94a44f0e29 (svn r7961) [Configure] -Fix: "" in config params didn't survive --reconfig. They should now.
truelight
parents: 5810
diff changeset
   289
		eval "v=\"\$$p\""
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   290
		p=`echo "$p" | sed 's/_/-/g;s/\n//g;'`
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   291
		# Only save those params that aren't empty
5811
cb94a44f0e29 (svn r7961) [Configure] -Fix: "" in config params didn't survive --reconfig. They should now.
truelight
parents: 5810
diff changeset
   292
		configure="$configure --$p=\"$v\""
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   293
	done
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   294
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   295
	echo "$configure" >> $config_log
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   296
	echo "$configure" > config.cache
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   297
	echo "" >> $config_log
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   298
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   299
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   300
check_params() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   301
	# Some params want to be in full uppercase, else they might not work as
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   302
	# expected.. fix that here
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   303
6404
1a632e5d77d0 (svn r8811) [Configure] -Fix: [:lower:] for tr is GNU specific. Use [a-z] instead. (Celestar)
truelight
parents: 6403
diff changeset
   304
	endian=`echo $endian | tr '[a-z]' '[A-Z]'`
1a632e5d77d0 (svn r8811) [Configure] -Fix: [:lower:] for tr is GNU specific. Use [a-z] instead. (Celestar)
truelight
parents: 6403
diff changeset
   305
	os=`echo $os | tr '[a-z]' '[A-Z]'`
9363
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
   306
	cpu_type=`echo $cpu_type | tr '[a-z]' '[A-Z]'`
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   307
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   308
	# Check if all params have valid values
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   309
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   310
	# Endian only allows AUTO, LE and, BE
9701
d1ac22c62f64 (svn r11036) [NoAI] -Sync: with trunk r10774:11035.
rubidium
parents: 9694
diff changeset
   311
	if [ -z "`echo $endian | egrep '^(AUTO|LE|BE|PREPROCESSOR)$'`" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   312
		echo "configure: error: invalid option --endian=$endian"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   313
		echo " Available options are: --endian=[AUTO|LE|BE]"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   314
		exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   315
	fi
9701
d1ac22c62f64 (svn r11036) [NoAI] -Sync: with trunk r10774:11035.
rubidium
parents: 9694
diff changeset
   316
	if [ "$endian" = "PREPROCESSOR" ] && [ "$os" != "OSX" ]; then
d1ac22c62f64 (svn r11036) [NoAI] -Sync: with trunk r10774:11035.
rubidium
parents: 9694
diff changeset
   317
		echo "configure: error: invalid option --endian=$endian"
d1ac22c62f64 (svn r11036) [NoAI] -Sync: with trunk r10774:11035.
rubidium
parents: 9694
diff changeset
   318
		echo " PREPROCESSOR is only available for OSX"
d1ac22c62f64 (svn r11036) [NoAI] -Sync: with trunk r10774:11035.
rubidium
parents: 9694
diff changeset
   319
		exit 1
d1ac22c62f64 (svn r11036) [NoAI] -Sync: with trunk r10774:11035.
rubidium
parents: 9694
diff changeset
   320
	fi
9624
b71483f2330f (svn r9915) [NoAI] -Sync with trunk -r9815:9914
glx
parents: 9623
diff changeset
   321
	# OS only allows DETECT, UNIX, OSX, FREEBSD, OPENBSD, MORPHOS, BEOS, SUNOS, CYGWIN, MINGW, OS2, WINCE, and PSP
b71483f2330f (svn r9915) [NoAI] -Sync with trunk -r9815:9914
glx
parents: 9623
diff changeset
   322
	if [ -z "`echo $os | egrep '^(DETECT|UNIX|OSX|FREEBSD|OPENBSD|MORPHOS|BEOS|SUNOS|CYGWIN|MINGW|OS2|WINCE|PSP)$'`" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   323
		echo "configure: error: invalid option --os=$os"
9624
b71483f2330f (svn r9915) [NoAI] -Sync with trunk -r9815:9914
glx
parents: 9623
diff changeset
   324
		echo " Available options are: --os=[DETECT|UNIX|OSX|FREEBSD|OPENBSD|MORPHOS|BEOS|SUNOS|CYGWIN|MINGW|OS2|WINCE|PSP]"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   325
		exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   326
	fi
9363
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
   327
	# cpu_type can be either 32 or 64
9629
66dde6412125 (svn r10350) [NoAI] -Sync with trunk r10194:10349
glx
parents: 9628
diff changeset
   328
	if [ -z "`echo $cpu_type | egrep '^(32|64|DETECT)$'`" ]; then
9363
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
   329
		echo "configure: error: invalid option --cpu-type=$cpu_type"
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
   330
		echo " Available options are: --cpu-type[=DETECT|32|64]"
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
   331
		exit 1
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
   332
	fi
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   333
	# enable_debug should be between 0 and 4
9629
66dde6412125 (svn r10350) [NoAI] -Sync with trunk r10194:10349
glx
parents: 9628
diff changeset
   334
	if [ -z "`echo $enable_debug | egrep '^[0123]$'`" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   335
		echo "configure: error: invalid option --enable-debug=$enable_debug"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   336
		echo " Available options are: --enable-debug[=0123]"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   337
		exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   338
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   339
6407
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
   340
	detect_awk
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
   341
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   342
	check_build
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   343
	check_host
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   344
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   345
	detect_os
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   346
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   347
# We might enable universal builds always on OSX targets.. but currently we don't
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   348
#	if [ "$enable_universal" = "1" ]  && [ "$os" != "OSX" ]; then
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   349
	if [ "$enable_universal" = "1" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   350
		enable_universal="0"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   351
	fi
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   352
	if [ "$enable_universal" = "2" ]  && [ "$os" != "OSX" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   353
		log 1 "configure: error: --enable-universal only works on OSX"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   354
		exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   355
	fi
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   356
	if [ "$enable_universal" = "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   357
		log 1 "checking universal build... no"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   358
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   359
		log 1 "checking universal build... yes"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   360
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   361
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   362
	# Already detected by check_build
6231
b81890a2b692 (svn r8679) [Configure] -Fix: 'checking for' and 'checking' was used mixed, now only 'checking' is used
truelight
parents: 6230
diff changeset
   363
	log 1 "checking build cc... $cc_build"
b81890a2b692 (svn r8679) [Configure] -Fix: 'checking for' and 'checking' was used mixed, now only 'checking' is used
truelight
parents: 6230
diff changeset
   364
	log 1 "checking host cc... $cc_host"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   365
5838
9c3129cb019b (svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b.
rubidium
parents: 5829
diff changeset
   366
	check_cxx_build
9c3129cb019b (svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b.
rubidium
parents: 5829
diff changeset
   367
	check_cxx_host
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   368
	check_windres
6408
a4fbf6e66c53 (svn r8816) [Config] -Fix: if you disable stripping, don't detect strip at all
truelight
parents: 6407
diff changeset
   369
	if [ "$enable_strip" != "0" ]; then
a4fbf6e66c53 (svn r8816) [Config] -Fix: if you disable stripping, don't detect strip at all
truelight
parents: 6407
diff changeset
   370
		check_strip
a4fbf6e66c53 (svn r8816) [Config] -Fix: if you disable stripping, don't detect strip at all
truelight
parents: 6407
diff changeset
   371
	else
a4fbf6e66c53 (svn r8816) [Config] -Fix: if you disable stripping, don't detect strip at all
truelight
parents: 6407
diff changeset
   372
		log 1 "checking strip... disabled"
a4fbf6e66c53 (svn r8816) [Config] -Fix: if you disable stripping, don't detect strip at all
truelight
parents: 6407
diff changeset
   373
	fi
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   374
	check_lipo
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   375
	check_makedepend
9363
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
   376
	detect_cputype
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   377
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   378
	if [ "$enable_static" = "1" ]; then
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   379
		if [ "$os" = "MINGW" ] || [ "$os" = "CYGWIN" ] || [ "$os" = "MORPHOS" ] || [ "$os" = "OSX" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   380
			enable_static="2"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   381
		else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   382
			enable_static="0"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   383
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   384
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   385
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   386
	if [ "$enable_static" != "0" ]; then
6231
b81890a2b692 (svn r8679) [Configure] -Fix: 'checking for' and 'checking' was used mixed, now only 'checking' is used
truelight
parents: 6230
diff changeset
   387
		log 1 "checking static... yes"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   388
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   389
		if [ "$os" != "MINGW" ] && [ "$os" != "CYGWIN" ] && [ "$os" != "OSX" ] && [ "$os" != "MORPHOS" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   390
			log 1 "WARNING: static is only known to work on Windows, MacOSX and MorphOS"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   391
			log 1 "WARNING: use static at your own risk on this platform"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   392
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   393
			sleep 5
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   394
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   395
	else
6231
b81890a2b692 (svn r8679) [Configure] -Fix: 'checking for' and 'checking' was used mixed, now only 'checking' is used
truelight
parents: 6230
diff changeset
   396
		log 1 "checking static... no"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   397
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   398
6554
28f436faed81 (svn r9030) [Config] -Add: added --enable-unicode, which enables unicode (mostly for windows). Enabled by default on WIN32 (makes win9x fail, so use --disable-unicode if you produce binaries for win9x)
truelight
parents: 6546
diff changeset
   399
	if [ "$enable_unicode" = "1" ]; then
28f436faed81 (svn r9030) [Config] -Add: added --enable-unicode, which enables unicode (mostly for windows). Enabled by default on WIN32 (makes win9x fail, so use --disable-unicode if you produce binaries for win9x)
truelight
parents: 6546
diff changeset
   400
		if [ "$os" = "MINGW" ] || [ "$os" = "CYGWIN" ]; then
28f436faed81 (svn r9030) [Config] -Add: added --enable-unicode, which enables unicode (mostly for windows). Enabled by default on WIN32 (makes win9x fail, so use --disable-unicode if you produce binaries for win9x)
truelight
parents: 6546
diff changeset
   401
			enable_unicode="2"
28f436faed81 (svn r9030) [Config] -Add: added --enable-unicode, which enables unicode (mostly for windows). Enabled by default on WIN32 (makes win9x fail, so use --disable-unicode if you produce binaries for win9x)
truelight
parents: 6546
diff changeset
   402
		else
28f436faed81 (svn r9030) [Config] -Add: added --enable-unicode, which enables unicode (mostly for windows). Enabled by default on WIN32 (makes win9x fail, so use --disable-unicode if you produce binaries for win9x)
truelight
parents: 6546
diff changeset
   403
			enable_unicode="0"
28f436faed81 (svn r9030) [Config] -Add: added --enable-unicode, which enables unicode (mostly for windows). Enabled by default on WIN32 (makes win9x fail, so use --disable-unicode if you produce binaries for win9x)
truelight
parents: 6546
diff changeset
   404
		fi
28f436faed81 (svn r9030) [Config] -Add: added --enable-unicode, which enables unicode (mostly for windows). Enabled by default on WIN32 (makes win9x fail, so use --disable-unicode if you produce binaries for win9x)
truelight
parents: 6546
diff changeset
   405
	fi
28f436faed81 (svn r9030) [Config] -Add: added --enable-unicode, which enables unicode (mostly for windows). Enabled by default on WIN32 (makes win9x fail, so use --disable-unicode if you produce binaries for win9x)
truelight
parents: 6546
diff changeset
   406
28f436faed81 (svn r9030) [Config] -Add: added --enable-unicode, which enables unicode (mostly for windows). Enabled by default on WIN32 (makes win9x fail, so use --disable-unicode if you produce binaries for win9x)
truelight
parents: 6546
diff changeset
   407
	if [ "$enable_unicode" != "0" ]; then
28f436faed81 (svn r9030) [Config] -Add: added --enable-unicode, which enables unicode (mostly for windows). Enabled by default on WIN32 (makes win9x fail, so use --disable-unicode if you produce binaries for win9x)
truelight
parents: 6546
diff changeset
   408
		log 1 "checking unicode... yes"
28f436faed81 (svn r9030) [Config] -Add: added --enable-unicode, which enables unicode (mostly for windows). Enabled by default on WIN32 (makes win9x fail, so use --disable-unicode if you produce binaries for win9x)
truelight
parents: 6546
diff changeset
   409
	else
28f436faed81 (svn r9030) [Config] -Add: added --enable-unicode, which enables unicode (mostly for windows). Enabled by default on WIN32 (makes win9x fail, so use --disable-unicode if you produce binaries for win9x)
truelight
parents: 6546
diff changeset
   410
		log 1 "checking unicode... no"
28f436faed81 (svn r9030) [Config] -Add: added --enable-unicode, which enables unicode (mostly for windows). Enabled by default on WIN32 (makes win9x fail, so use --disable-unicode if you produce binaries for win9x)
truelight
parents: 6546
diff changeset
   411
	fi
28f436faed81 (svn r9030) [Config] -Add: added --enable-unicode, which enables unicode (mostly for windows). Enabled by default on WIN32 (makes win9x fail, so use --disable-unicode if you produce binaries for win9x)
truelight
parents: 6546
diff changeset
   412
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   413
	# Show what we configured
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   414
	if [ "$enable_debug" = "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   415
		log 1 "using debug level... no"
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   416
	elif [ "$enable_profiling" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   417
		log 1 "using debug level... profiling (debug level $enable_debug)"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   418
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   419
		log 1 "using debug level... level $enable_debug"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   420
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   421
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   422
	detect_sdl
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   423
	detect_cocoa
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   424
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   425
	if [ "$enable_dedicated" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   426
		log 1 "checking GDI video driver... skipping"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   427
		log 1 "checking dedicated... found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   428
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   429
		if [ "$enable_network" = "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   430
			log 1 "WARNING: compiling a dedicated server without network is pointless"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   431
			sleep 5
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   432
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   433
	else
6011
799eacb62d8e (svn r8311) [WinCE] -Fix r8304: GDI wasn't enabled by default on WinCE
truelight
parents: 6004
diff changeset
   434
		if [ "$os" = "MINGW" ] || [ "$os" = "CYGWIN" ] || [ "$os" = "WINCE" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   435
			log 1 "checking GDI video driver... found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   436
		else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   437
			log 1 "checking GDI video driver... not Windows, skipping"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   438
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   439
6011
799eacb62d8e (svn r8311) [WinCE] -Fix r8304: GDI wasn't enabled by default on WinCE
truelight
parents: 6004
diff changeset
   440
		if [ -z "$sdl_config" ] && [ "$with_cocoa" = 0 ] && [ "$os" != "MINGW" ] && [ "$os" != "CYGWIN" ] && [ "$os" != "WINCE" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   441
			log 1 "WARNING: no video driver found, building dedicated only"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   442
			enable_dedicated="1"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   443
			sleep 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   444
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   445
			log 1 "checking dedicated... found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   446
		else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   447
			log 1 "checking dedicated... not selected"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   448
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   449
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   450
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   451
	if [ "$enable_network" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   452
		log 1 "checking network... found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   453
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   454
		log 1 "checking network... disabled"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   455
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   456
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   457
	if [ "$enable_translator" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   458
		log 1 "checking translator... debug"
5736
e54edfb4577a (svn r7769) -Fix (r7759): the strgen -t flag (todo) was set when it shouldn't be set and vice-versa.
rubidium
parents: 5730
diff changeset
   459
		# -t shows TODO items, normally they are muted
e54edfb4577a (svn r7769) -Fix (r7759): the strgen -t flag (todo) was set when it shouldn't be set and vice-versa.
rubidium
parents: 5730
diff changeset
   460
		strgen_flags="-t"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   461
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   462
		log 1 "checking translator... no"
5736
e54edfb4577a (svn r7769) -Fix (r7759): the strgen -t flag (todo) was set when it shouldn't be set and vice-versa.
rubidium
parents: 5730
diff changeset
   463
		strgen_flags=""
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   464
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   465
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   466
	if [ "$enable_assert" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   467
		log 1 "checking assert... enabled"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   468
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   469
		log 1 "checking assert... disabled"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   470
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   471
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   472
	detect_zlib
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   473
	detect_png
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   474
	detect_freetype
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   475
	detect_fontconfig
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   476
	detect_iconv
6209
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
   477
	detect_pspconfig
6360
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
   478
	detect_libtimidity
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   479
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   480
	if [ "$with_direct_music" = "1" ] || [ "$with_direct_music" = "2" ]; then
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   481
		if [ "$os" != "MINGW" ] && [ "$os" != "CYGWIN" ]; then
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   482
			if [ "$with_direct_music" = "2" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   483
				log 1 "configure: error: direct-music is only supported on Win32 targets"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   484
				exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   485
			fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   486
			with_direct_music="0"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   487
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   488
			log 1 "checking direct-music... not Windows, skipping"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   489
		else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   490
			check_direct_music
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   491
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   492
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   493
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   494
	detect_sort
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   495
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   496
	if [ "$os" = "OSX" ] && [ "$endian" = "AUTO" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   497
		endian="PREPROCESSOR"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   498
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   499
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   500
	log 1 "checking endianess... $endian"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   501
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   502
	# Suppress language errors when there is a version defined, indicating a release
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   503
	#  It just isn't pretty if any release produces warnings in the languages.
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   504
	if [ -f "$ROOT_DIR/version" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   505
		lang_suppress="yes"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   506
		log 1 "suppress language errors... yes"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   507
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   508
		lang_suppress=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   509
		log 1 "suppress language errors... no"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   510
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   511
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   512
	if [ "$enable_debug" = "0" ] && [ "$enable_profiling" = "0" ] && [ "$enable_strip" != "0" ]; then
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   513
		if [ "$os" = "MORPHOS" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   514
			strip_arg="--strip-all --strip-unneeded --remove-section .comment"
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   515
		elif [ "$os" = "OSX" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   516
			strip_arg=""
5810
7959ee2ab55a (svn r7959) [Configure] -Fix: OS2-gcc needs to get stripping via gcc, because it needs to be feed to emxbind at link-time.
truelight
parents: 5809
diff changeset
   517
		elif [ "$os" = "OS2" ]; then
7959ee2ab55a (svn r7959) [Configure] -Fix: OS2-gcc needs to get stripping via gcc, because it needs to be feed to emxbind at link-time.
truelight
parents: 5809
diff changeset
   518
			strip_arg=""
7959ee2ab55a (svn r7959) [Configure] -Fix: OS2-gcc needs to get stripping via gcc, because it needs to be feed to emxbind at link-time.
truelight
parents: 5809
diff changeset
   519
			# OS2 uses strip via gcc, because it needs to be feed to emxbind
7959ee2ab55a (svn r7959) [Configure] -Fix: OS2-gcc needs to get stripping via gcc, because it needs to be feed to emxbind at link-time.
truelight
parents: 5809
diff changeset
   520
			LDFLAGS="$LDFLAGS -s"
6556
195bb9b3c565 (svn r9033) [Config] -Fix: GNU strip has -s, but Solaris strip doesn't. Detect this when system is SUNOS.
truelight
parents: 6554
diff changeset
   521
		elif [ "$os" = "SUNOS" ]; then
195bb9b3c565 (svn r9033) [Config] -Fix: GNU strip has -s, but Solaris strip doesn't. Detect this when system is SUNOS.
truelight
parents: 6554
diff changeset
   522
			# The GNU strip does know -s, the non-GNU doesn't
195bb9b3c565 (svn r9033) [Config] -Fix: GNU strip has -s, but Solaris strip doesn't. Detect this when system is SUNOS.
truelight
parents: 6554
diff changeset
   523
			#  So try to detect it (in a bit of an ugly way)
195bb9b3c565 (svn r9033) [Config] -Fix: GNU strip has -s, but Solaris strip doesn't. Detect this when system is SUNOS.
truelight
parents: 6554
diff changeset
   524
			strip_arg="`$strip -s strip.test 2>/dev/null && echo \"-s\"`"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   525
		else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   526
			strip_arg="-s"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   527
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   528
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   529
		log 1 "checking stripping... $strip $strip_arg"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   530
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   531
		strip=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   532
		log 1 "checking stripping... skipped"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   533
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   534
9626
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   535
	if [ "$with_distcc" = "0" ]; then
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   536
		log 1 "checking distcc... no"
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   537
	elif [ "$with_distcc" = "1" ]; then
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   538
		with_distcc="0"
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   539
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   540
		log 1 "checking distcc... no (only used when forced)"
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   541
	elif [ "$with_distcc" = "2" ]; then
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   542
		distcc="distcc"
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   543
	else
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   544
		distcc="$with_distcc"
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   545
	fi
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   546
	if [ "$with_distcc" != "0" ]; then
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   547
		res="`$distcc --version 2>/dev/null | head -n 1 | cut -b 0-6`"
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   548
		if [ "$res" != "distcc" ]; then
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   549
			distcc=""
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   550
			log 1 "checking distcc... no"
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   551
			if [ "$with_distcc" = "2" ]; then
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   552
				log 1 "configure: error: no distcc detected, but was forced to be used"
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   553
				exit 1
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   554
			fi
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   555
			if [ "$with_distcc" != "1" ]; then
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   556
				log 1 "configure: error: '$with_distcc' doesn't seem a distcc to me"
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   557
				exit 1
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   558
			fi
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   559
		fi
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   560
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   561
		log 1 "checking distcc... $distcc"
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   562
	fi
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   563
9628
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   564
	if [ "$with_ccache" = "0" ]; then
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   565
		log 1 "checking ccache... no"
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   566
	elif [ "$with_ccache" = "1" ]; then
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   567
		with_ccache="0"
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   568
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   569
		log 1 "checking ccache... no (only used when forced)"
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   570
	elif [ "$with_ccache" = "2" ]; then
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   571
		ccache="ccache"
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   572
	else
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   573
		ccache="$with_ccache"
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   574
	fi
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   575
	if [ "$with_ccache" != "0" ]; then
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   576
		res="`$ccache --version 2>/dev/null | head -n 1 | cut -b 0-6`"
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   577
		if [ "$res" != "ccache" ]; then
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   578
			ccache=""
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   579
			log 1 "checking ccache... no"
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   580
			if [ "$with_ccache" = "2" ]; then
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   581
				log 1 "configure: error: no ccache detected, but was forced to be used"
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   582
				exit 1
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   583
			fi
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   584
			if [ "$with_ccache" != "1" ]; then
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   585
				log 1 "configure: error: '$with_ccache' doesn't seem a ccache to me"
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   586
				exit 1
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   587
			fi
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   588
		fi
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   589
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   590
		log 1 "checking ccache... $ccache"
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   591
	fi
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   592
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   593
	if [ "$os" != "OSX" ] && [ "$with_osx_sysroot" != "0" ]; then
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   594
		if [ "$with_osx_sysroot" = "1" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   595
			with_osx_sysroot="0"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   596
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   597
			log 1 "checking OSX sysroot... not OSX, skipping"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   598
		else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   599
			log 1 "configure: error: --with-osx-sysroot only works if OSX is the target"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   600
			exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   601
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   602
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   603
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   604
	if [ "$with_osx_sysroot" != "0" ]; then
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   605
		if [ "$enable_universal" = "0" ] && [ "$with_osx_sysroot" != "1" ] && [ "$with_osx_sysroot" != "2" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   606
			log 1 "checking OSX sysroot... $with_osx_sysroot"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   607
		else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   608
			# If autodetect and no universal, use system default
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   609
			if [ "$with_osx_sysroot" = "1" ] && [ "$enable_universal" = "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   610
				log 1 "checking OSX sysroot... no (use system default)"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   611
				with_osx_sysroot="0"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   612
			else
5792
81daf7ef579e (svn r7883) It's spelled 'automatically'
tron
parents: 5790
diff changeset
   613
				log 1 "checking OSX sysroot... automatically"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   614
				with_osx_sysroot="3"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   615
			fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   616
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   617
	else
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   618
		if [ "$os" = "OSX" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   619
			log 1 "checking OSX sysroot... no (use system default)"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   620
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   621
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   622
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   623
	if [ "$os" != "OSX" ] && [ "$with_application_bundle" != "0" ]; then
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   624
		if [ "$with_application_bundle" = "1" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   625
			with_application_bundle="0"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   626
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   627
			log 1 "checking OSX application bundle... not OSX, skipping"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   628
		else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   629
			log 1 "configure: error: --with-application-bundle only works if OSX is the target"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   630
			exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   631
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   632
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   633
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   634
	if [ "$os" = "OSX" ] && [ "$with_application_bundle" = "1" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   635
		OSXAPP="OpenTTD.app"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   636
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   637
		OSXAPP=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   638
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   639
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   640
	if [ "$os" = "OSX" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   641
		# Test on G5
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   642
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   643
		if [ "$enable_osx_g5" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   644
			log 1 "detecting G5... yes (forced)"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   645
		else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   646
			# First, are we a real OSX system, else we can't detect it
6404
1a632e5d77d0 (svn r8811) [Configure] -Fix: [:lower:] for tr is GNU specific. Use [a-z] instead. (Celestar)
truelight
parents: 6403
diff changeset
   647
			native=`LC_ALL=C uname | tr '[A-Z]' '[a-z]' | grep darwin`
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   648
			# If $host doesn't match $build , we are cross-compiling
9476
1d1ed96f32ad (svn r9323) [NoAI] -Sync with trunk r9206:9322
truelight
parents: 9432
diff changeset
   649
			if [ -n "$native" ] && [ "$build" == "$host" ]; then
1d1ed96f32ad (svn r9323) [NoAI] -Sync with trunk r9206:9322
truelight
parents: 9432
diff changeset
   650
				$cxx_build $SRC_DIR/os/macosx/G5_detector.cpp -o G5_detector
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   651
				res=`./G5_detector`
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   652
				rm -f G5_detector
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   653
				if [ -n "$res" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   654
					# This is G5, add flags for it
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   655
					enable_osx_g5="2"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   656
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   657
					log 1 "detecting G5... yes"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   658
				else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   659
					enable_osx_g5="0"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   660
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   661
					log 1 "detecting G5... no"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   662
				fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   663
			else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   664
				enable_osx_g5="0"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   665
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   666
				log 1 "detecting G5... no (cross-compiling)"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   667
			fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   668
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   669
	else
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   670
		if [ "$enable_osx_g5" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   671
			log 1 "configure: error: OSX G5 selected, but not compiling for OSX"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   672
			log 1 "configure: error: either select OSX as OS, or deselect OSX G5"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   673
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   674
			exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   675
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   676
	fi
9626
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   677
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   678
	if [ -n "$released_version" ]; then
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   679
		log 1 "checking revision... release ($released_version)"
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   680
		if [ -n "$revision" ] && [ "$revision" != "$released_version" ]; then
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   681
			log 1 "WARNING: overriding of the revision is NOT possible for releases"
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   682
			log 1 "WARNING: the given revision is IGNORED"
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   683
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   684
			sleep 5
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   685
		fi
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   686
		revision=$released_version
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   687
	else
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   688
		if [ -n "$revision" ]; then
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   689
			log 1 "checking revision... $revision"
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   690
			log 1 "WARNING: we do not advise you to use this setting"
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   691
			log 1 "WARNING: in most cases it is not safe for network use"
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   692
			log 1 "WARNING: USE WITH CAUTION!"
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   693
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   694
			sleep 5
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   695
		elif [ -f "$ROOT_DIR/version" ]; then
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   696
			revision="`cat $ROOT_DIR/version`"
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   697
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   698
			log 1 "checking revision... $revision"
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   699
		elif [ -d "$ROOT_DIR/.svn" ] && [ -n "`svn help`" ]; then
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   700
			revision=""
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   701
			log 1 "checking revision... svn detection"
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   702
		elif [ -d "$ROOT_DIR/.git" ] && [ -n "`git help`" ]; then
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   703
			revision=""
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   704
			log 1 "checking revision... git detection"
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   705
		else
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   706
			revision=""
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   707
			log 1 "checking revision... no detection"
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   708
			log 1 "WARNING: there is no means to determine the version."
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   709
			log 1 "WARNING: please use a subversion or git checkout of OpenTTD."
9641
855e32c08c9b (svn r10533) [NoAI] -Sync with trunk r10460:r10532.
truelight
parents: 9629
diff changeset
   710
			log 1 "WARNING: this version is only allowed by game servers that"
855e32c08c9b (svn r10533) [NoAI] -Sync with trunk r10460:r10532.
truelight
parents: 9629
diff changeset
   711
			log 1 "WARNING: have been compiled without version detection."
855e32c08c9b (svn r10533) [NoAI] -Sync with trunk r10460:r10532.
truelight
parents: 9629
diff changeset
   712
			log 1 "WARNING: there is a great chance you desync."
9626
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   713
			log 1 "WARNING: USE WITH CAUTION!"
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   714
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   715
			sleep 5
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   716
		fi
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   717
	fi
9628
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   718
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   719
	if [ "$personal_dir" = "1" ]; then
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   720
		if [ "$os" = "MINGW" ] || [ "$os" = "CYGWIN" ] || [ "$os" = "WINCE" ]; then
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   721
			personal_dir="OpenTTD"
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   722
		elif [ "$os" = "OSX" ]; then
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   723
			personal_dir="Documents/OpenTTD"
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   724
		else
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   725
			personal_dir=".openttd"
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   726
		fi
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   727
	fi
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   728
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   729
	if [ -n "$personal_dir" ]
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   730
	then
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   731
		log 1 "personal home directory... $personal_dir"
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   732
	else
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   733
		log 1 "personal home directory... none"
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   734
	fi
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   735
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   736
	if [ -n "$install_dir" ]
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   737
	then
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   738
		log 1 "installation directory... $install_dir"
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   739
	else
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   740
		log 1 "installation directory... none"
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   741
	fi
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   742
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   743
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   744
make_cflags_and_ldflags() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   745
	# General CFlags for BUILD
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   746
	CFLAGS_BUILD=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   747
	# General CFlags for HOST
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   748
	CFLAGS="$CFLAGS -D$os -DWITH_REV"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   749
	# CFlags for HOST and C-Compiler
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   750
	CC_FLAGS=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   751
	# Libs to compile. In fact this is just LDFLAGS
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   752
	LIBS="-lstdc++"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   753
	# LDFLAGS used for HOST
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   754
	LDFLAGS="$LDFLAGS"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   755
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   756
	if [ $enable_debug = 0 ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   757
		# No debug, add default stuff
5802
6f6dee32edd1 (svn r7931) -Fix (r7759): multiple (different) -O flags made compilations with the wrong optimisations.
rubidium
parents: 5800
diff changeset
   758
		OBJS_SUBDIR="release"
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   759
		if [ "$os" = "OSX" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   760
			# these compilerflags makes the app run as fast as possible without making the app unstable. It works on G3 or newer
9641
855e32c08c9b (svn r10533) [NoAI] -Sync with trunk r10460:r10532.
truelight
parents: 9629
diff changeset
   761
			CFLAGS="-O3 -funroll-loops -fsched-interblock -falign-loops=16 -falign-jumps=16 -falign-functions=16 -falign-jumps-max-skip=15 -falign-loops-max-skip=15 -mdynamic-no-pic $CFLAGS"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   762
		else
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   763
			if [ "$os" = "MORPHOS" ]; then
9641
855e32c08c9b (svn r10533) [NoAI] -Sync with trunk r10460:r10532.
truelight
parents: 9629
diff changeset
   764
				CFLAGS="-I/gg/os-include -noixemul -fstrict-aliasing -fexpensive-optimizations -mcpu=604 -fno-inline -mstring -mmultiple $CFLAGS"
6372
6721af3ce810 (svn r8776) [MorhpOS] -Fix: LDFLAGS needs -noixemul too
truelight
parents: 6361
diff changeset
   765
				LDFLAGS="$LDFLAGS -noixemul"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   766
			fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   767
9641
855e32c08c9b (svn r10533) [NoAI] -Sync with trunk r10460:r10532.
truelight
parents: 9629
diff changeset
   768
			CFLAGS="-O2 -fomit-frame-pointer $CFLAGS"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   769
		fi
5802
6f6dee32edd1 (svn r7931) -Fix (r7759): multiple (different) -O flags made compilations with the wrong optimisations.
rubidium
parents: 5800
diff changeset
   770
	else
6f6dee32edd1 (svn r7931) -Fix (r7759): multiple (different) -O flags made compilations with the wrong optimisations.
rubidium
parents: 5800
diff changeset
   771
		OBJS_SUBDIR="debug"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   772
5802
6f6dee32edd1 (svn r7931) -Fix (r7759): multiple (different) -O flags made compilations with the wrong optimisations.
rubidium
parents: 5800
diff changeset
   773
		# Each debug level reduces the optimalization by a bit
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   774
		if [ $enable_debug -ge 1 ]; then
5802
6f6dee32edd1 (svn r7931) -Fix (r7759): multiple (different) -O flags made compilations with the wrong optimisations.
rubidium
parents: 5800
diff changeset
   775
			CFLAGS="$CFLAGS -g -D_DEBUG"
6230
06c91ff0af27 (svn r8678) [PSP] -Add: added LIBS and CFLAGS needed to compile PSP
truelight
parents: 6212
diff changeset
   776
			if [ "$os" = "PSP" ]; then
06c91ff0af27 (svn r8678) [PSP] -Add: added LIBS and CFLAGS needed to compile PSP
truelight
parents: 6212
diff changeset
   777
				CFLAGS="$CFLAGS -G0"
06c91ff0af27 (svn r8678) [PSP] -Add: added LIBS and CFLAGS needed to compile PSP
truelight
parents: 6212
diff changeset
   778
			fi
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   779
		fi
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   780
		if [ $enable_debug -ge 2 ]; then
5802
6f6dee32edd1 (svn r7931) -Fix (r7759): multiple (different) -O flags made compilations with the wrong optimisations.
rubidium
parents: 5800
diff changeset
   781
			CFLAGS="$CFLAGS -fno-inline"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   782
		fi
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   783
		if [ $enable_debug -ge 3 ]; then
5802
6f6dee32edd1 (svn r7931) -Fix (r7759): multiple (different) -O flags made compilations with the wrong optimisations.
rubidium
parents: 5800
diff changeset
   784
			CFLAGS="$CFLAGS -O0"
6f6dee32edd1 (svn r7931) -Fix (r7759): multiple (different) -O flags made compilations with the wrong optimisations.
rubidium
parents: 5800
diff changeset
   785
		else
6f6dee32edd1 (svn r7931) -Fix (r7759): multiple (different) -O flags made compilations with the wrong optimisations.
rubidium
parents: 5800
diff changeset
   786
			CFLAGS="$CFLAGS -O2"
6f6dee32edd1 (svn r7931) -Fix (r7759): multiple (different) -O flags made compilations with the wrong optimisations.
rubidium
parents: 5800
diff changeset
   787
		fi
6f6dee32edd1 (svn r7931) -Fix (r7759): multiple (different) -O flags made compilations with the wrong optimisations.
rubidium
parents: 5800
diff changeset
   788
	fi
6f6dee32edd1 (svn r7931) -Fix (r7759): multiple (different) -O flags made compilations with the wrong optimisations.
rubidium
parents: 5800
diff changeset
   789
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   790
	if [ "$enable_profiling" != "0" ]; then
5802
6f6dee32edd1 (svn r7931) -Fix (r7759): multiple (different) -O flags made compilations with the wrong optimisations.
rubidium
parents: 5800
diff changeset
   791
		CFLAGS="$CFLAGS -p"
6f6dee32edd1 (svn r7931) -Fix (r7759): multiple (different) -O flags made compilations with the wrong optimisations.
rubidium
parents: 5800
diff changeset
   792
		LDFLAGS="$LDFLAGS -pg"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   793
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   794
9623
ee0173281563 (svn r9826) [NoAI] -Fix r9821: in bash '==' is disliked, use '='
truelight
parents: 9621
diff changeset
   795
	if [ "$with_threads" = "0" ]; then
9621
7654501cf02d (svn r9821) [NoAI] -Fix: support compilation without threads.
rubidium
parents: 9601
diff changeset
   796
		CFLAGS="$CFLAGS -DNO_THREADS"
7654501cf02d (svn r9821) [NoAI] -Fix: support compilation without threads.
rubidium
parents: 9601
diff changeset
   797
	fi
7654501cf02d (svn r9821) [NoAI] -Fix: support compilation without threads.
rubidium
parents: 9601
diff changeset
   798
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   799
	# Enable some things only for certain GCC versions
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   800
	cc_version=`$cc_host -dumpversion | cut -c 1,3`
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   801
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   802
	if [ $cc_version -ge 29 ]; then
5802
6f6dee32edd1 (svn r7931) -Fix (r7759): multiple (different) -O flags made compilations with the wrong optimisations.
rubidium
parents: 5800
diff changeset
   803
		CFLAGS="$CFLAGS -Wall -Wno-multichar -Wsign-compare -Wundef"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   804
		CFLAGS="$CFLAGS -Wwrite-strings -Wpointer-arith"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   805
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   806
		CC_CFLAGS="$CC_CFLAGS -Wstrict-prototypes"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   807
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   808
9601
b499fdd106d5 (svn r9713) [NoAI] -Sync with trunk (r9631:9712).
rubidium
parents: 9569
diff changeset
   809
	gcc295=""
b499fdd106d5 (svn r9713) [NoAI] -Sync with trunk (r9631:9712).
rubidium
parents: 9569
diff changeset
   810
	if [ "$cc_version" = 29 ]; then
b499fdd106d5 (svn r9713) [NoAI] -Sync with trunk (r9631:9712).
rubidium
parents: 9569
diff changeset
   811
		# Make sure we mark GCC 2.95 flag for Makefile.src.in, as we
b499fdd106d5 (svn r9713) [NoAI] -Sync with trunk (r9631:9712).
rubidium
parents: 9569
diff changeset
   812
		#  need a lovely hack there to make it compile correctly.
b499fdd106d5 (svn r9713) [NoAI] -Sync with trunk (r9631:9712).
rubidium
parents: 9569
diff changeset
   813
		gcc295="1"
b499fdd106d5 (svn r9713) [NoAI] -Sync with trunk (r9631:9712).
rubidium
parents: 9569
diff changeset
   814
	fi
b499fdd106d5 (svn r9713) [NoAI] -Sync with trunk (r9631:9712).
rubidium
parents: 9569
diff changeset
   815
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   816
	if [ $cc_version -ge 30 ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   817
		CFLAGS="$CFLAGS -W -Wno-unused-parameter"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   818
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   819
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   820
	if [ $cc_version -ge 34 ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   821
		CC_CFLAGS="$CC_CFLAGS -Wdeclaration-after-statement -Wold-style-definition"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   822
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   823
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   824
	if [ "$os" = "CYGWIN" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   825
		CFLAGS="$CFLAGS -mwin32"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   826
		LDFLAGS="$LDFLAGS -mwin32"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   827
	fi
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   828
	if [ "$os" = "MINGW" ] || [ "$os" = "CYGWIN" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   829
		CFLAGS="$CFLAGS -mno-cygwin"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   830
		LDFLAGS="$LDFLAGS -mno-cygwin"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   831
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   832
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   833
	if [ "$os" = "CYGWIN" ] || [ "$os" = "MINGW" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   834
		LDFLAGS="$LDFLAGS -Wl,--subsystem,windows"
9506
b7807b6a85a1 (svn r9397) [NoAI] -Fix r9396: one file was wrong
glx
parents: 9505
diff changeset
   835
		LIBS="$LIBS -lws2_32 -lwinmm -lgdi32 -ldxguid -lole32"
9569
761e7675f6f2 (svn r9513) [NoAI] -Fix: disable strict-aliasing to make GCC 4 stop bitching about it
truelight
parents: 9506
diff changeset
   836
	fi
761e7675f6f2 (svn r9513) [NoAI] -Fix: disable strict-aliasing to make GCC 4 stop bitching about it
truelight
parents: 9506
diff changeset
   837
761e7675f6f2 (svn r9513) [NoAI] -Fix: disable strict-aliasing to make GCC 4 stop bitching about it
truelight
parents: 9506
diff changeset
   838
	# GCC 4.0+ complains about that we break strict-aliasing.
761e7675f6f2 (svn r9513) [NoAI] -Fix: disable strict-aliasing to make GCC 4 stop bitching about it
truelight
parents: 9506
diff changeset
   839
	#  On most places we don't see how to fix it, and it doesn't
761e7675f6f2 (svn r9513) [NoAI] -Fix: disable strict-aliasing to make GCC 4 stop bitching about it
truelight
parents: 9506
diff changeset
   840
	#  break anything. So disable strict-aliasing to make the
761e7675f6f2 (svn r9513) [NoAI] -Fix: disable strict-aliasing to make GCC 4 stop bitching about it
truelight
parents: 9506
diff changeset
   841
	#  compiler all happy.
761e7675f6f2 (svn r9513) [NoAI] -Fix: disable strict-aliasing to make GCC 4 stop bitching about it
truelight
parents: 9506
diff changeset
   842
	if [ $cc_version -ge 40 ]; then
761e7675f6f2 (svn r9513) [NoAI] -Fix: disable strict-aliasing to make GCC 4 stop bitching about it
truelight
parents: 9506
diff changeset
   843
		CFLAGS="$CFLAGS -fno-strict-aliasing"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   844
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   845
9701
d1ac22c62f64 (svn r11036) [NoAI] -Sync: with trunk r10774:11035.
rubidium
parents: 9694
diff changeset
   846
	# GCC 4.2+ automatically assumes that signed overflows do
d1ac22c62f64 (svn r11036) [NoAI] -Sync: with trunk r10774:11035.
rubidium
parents: 9694
diff changeset
   847
	# not occur in signed arithmetics, whereas we are not
d1ac22c62f64 (svn r11036) [NoAI] -Sync: with trunk r10774:11035.
rubidium
parents: 9694
diff changeset
   848
	# sure that they will not happen. It furthermore complains
d1ac22c62f64 (svn r11036) [NoAI] -Sync: with trunk r10774:11035.
rubidium
parents: 9694
diff changeset
   849
	# about it's own optimized code in some places.
d1ac22c62f64 (svn r11036) [NoAI] -Sync: with trunk r10774:11035.
rubidium
parents: 9694
diff changeset
   850
	if [ $cc_version -ge 42 ]; then
d1ac22c62f64 (svn r11036) [NoAI] -Sync: with trunk r10774:11035.
rubidium
parents: 9694
diff changeset
   851
		CFLAGS="$CFLAGS -fno-strict-overflow"
d1ac22c62f64 (svn r11036) [NoAI] -Sync: with trunk r10774:11035.
rubidium
parents: 9694
diff changeset
   852
	fi
d1ac22c62f64 (svn r11036) [NoAI] -Sync: with trunk r10774:11035.
rubidium
parents: 9694
diff changeset
   853
9629
66dde6412125 (svn r10350) [NoAI] -Sync with trunk r10194:10349
glx
parents: 9628
diff changeset
   854
	if [ "$os" != "CYGWIN" ] && [ "$os" != "FREEBSD" ] && [ "$os" != "OPENBSD" ] && [ "$os" != "MINGW" ] && [ "$os" != "MORPHOS" ] && [ "$os" != "OSX" ] && [ "$os" != "WINCE" ] && [ "$os" != "PSP" ] && [ "$os" != "OS2" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   855
		LIBS="$LIBS -lpthread"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   856
		LIBS="$LIBS -lrt"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   857
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   858
6004
03795fd01cb8 (svn r8304) [WinCE] -Add: added configure detection for WinCE.
truelight
parents: 5838
diff changeset
   859
	if [ "$os" != "CYGWIN" ] && [ "$os" != "MINGW" ] && [ "$os" != "WINCE" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   860
		LIBS="$LIBS -lc"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   861
	fi
6004
03795fd01cb8 (svn r8304) [WinCE] -Add: added configure detection for WinCE.
truelight
parents: 5838
diff changeset
   862
	if [ "$os" = "WINCE" ]; then
6013
6858efdd45dd (svn r8313) [WinCE] -Fix: -lws2 wasn't included in libraries, so network couldn't be linked
truelight
parents: 6011
diff changeset
   863
		LIBS="$LIBS -lcoredll -lcorelibc -laygshell -lws2 -e WinMainCRTStartup"
6004
03795fd01cb8 (svn r8304) [WinCE] -Add: added configure detection for WinCE.
truelight
parents: 5838
diff changeset
   864
	fi
6211
fd01dad1fe55 (svn r8632) [PSP] -Add: added include and lib to CFLAGS / LDFLAGS based on the SDK dir from psp-config
truelight
parents: 6209
diff changeset
   865
	if [ "$os" = "PSP" ]; then
fd01dad1fe55 (svn r8632) [PSP] -Add: added include and lib to CFLAGS / LDFLAGS based on the SDK dir from psp-config
truelight
parents: 6209
diff changeset
   866
		CFLAGS="$CFLAGS -I`$psp_config -p`/include"
fd01dad1fe55 (svn r8632) [PSP] -Add: added include and lib to CFLAGS / LDFLAGS based on the SDK dir from psp-config
truelight
parents: 6209
diff changeset
   867
		LDFLAGS="$LDFLAGS -L`$psp_config -p`/lib"
6230
06c91ff0af27 (svn r8678) [PSP] -Add: added LIBS and CFLAGS needed to compile PSP
truelight
parents: 6212
diff changeset
   868
06c91ff0af27 (svn r8678) [PSP] -Add: added LIBS and CFLAGS needed to compile PSP
truelight
parents: 6212
diff changeset
   869
		CFLAGS="$CFLAGS -fno-exceptions -fno-rtti -D_PSP_FW_VERSION=150"
06c91ff0af27 (svn r8678) [PSP] -Add: added LIBS and CFLAGS needed to compile PSP
truelight
parents: 6212
diff changeset
   870
		LIBS="$LIBS -D_PSP_FW_VERSION=150 -lpspdebug -lpspdisplay -lpspge -lpspctrl -lpspsdk -lpspnet -lpspnet_inet -lpspnet_apctl -lpspnet_resolver -lpsputility -lpspuser -lpspkernel -lm"
6211
fd01dad1fe55 (svn r8632) [PSP] -Add: added include and lib to CFLAGS / LDFLAGS based on the SDK dir from psp-config
truelight
parents: 6209
diff changeset
   871
	fi
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   872
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   873
	if [ "$os" = "MORPHOS" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   874
		# -Wstrict-prototypes generates much noise because of system headers
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   875
		CFLAGS="$CFLAGS -Wno-strict-prototypes"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   876
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   877
9624
b71483f2330f (svn r9915) [NoAI] -Sync with trunk -r9815:9914
glx
parents: 9623
diff changeset
   878
	if [ "$os" = "OPENBSD" ]; then
b71483f2330f (svn r9915) [NoAI] -Sync with trunk -r9815:9914
glx
parents: 9623
diff changeset
   879
		LIBS="$LIBS -pthread"
b71483f2330f (svn r9915) [NoAI] -Sync with trunk -r9815:9914
glx
parents: 9623
diff changeset
   880
	fi
b71483f2330f (svn r9915) [NoAI] -Sync with trunk -r9815:9914
glx
parents: 9623
diff changeset
   881
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   882
	if [ "$os" = "OSX" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   883
		LDFLAGS="$LDFLAGS -framework Cocoa"
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   884
		if [ "$enable_dedicated" = "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   885
			LIBS="$LIBS -framework QuickTime"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   886
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   887
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   888
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   889
	if [ "$os" = "BEOS" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   890
		LIBS="$LIBS -lmidi -lbe"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   891
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   892
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   893
	# Most targets act like UNIX, just with some additions
9624
b71483f2330f (svn r9915) [NoAI] -Sync with trunk -r9815:9914
glx
parents: 9623
diff changeset
   894
	if [ "$os" = "BEOS" ] || [ "$os" = "OSX" ] || [ "$os" = "MORPHOS" ] || [ "$os" = "FREEBSD" ] || [ "$os" = "OPENBSD" ] || [ "$os" = "SUNOS" ] || [ "$os" = "OS2" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   895
		CFLAGS="$CFLAGS -DUNIX"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   896
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   897
	# And others like Windows
6004
03795fd01cb8 (svn r8304) [WinCE] -Add: added configure detection for WinCE.
truelight
parents: 5838
diff changeset
   898
	if [ "$os" = "MINGW" ] || [ "$os" = "CYGWIN" ] || [ "$os" = "WINCE" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   899
		CFLAGS="$CFLAGS -DWIN"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   900
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   901
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   902
	if [ -n "$sdl_config" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   903
		CFLAGS="$CFLAGS -DWITH_SDL"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   904
		CFLAGS="$CFLAGS `$sdl_config --cflags`"
6575
ce92be4d7a8d (svn r9053) -Change [Config]: removed unneeded stuff for windows
glx
parents: 6572
diff changeset
   905
		if [ "$os" != "MINGW" ] && [ "$os" != "CYGWIN" ] && [ "$os" != "WINCE" ]; then
ce92be4d7a8d (svn r9053) -Change [Config]: removed unneeded stuff for windows
glx
parents: 6572
diff changeset
   906
			if [ "$enable_static" != "0" ]; then
ce92be4d7a8d (svn r9053) -Change [Config]: removed unneeded stuff for windows
glx
parents: 6572
diff changeset
   907
				LIBS="$LIBS `$sdl_config --static-libs`"
ce92be4d7a8d (svn r9053) -Change [Config]: removed unneeded stuff for windows
glx
parents: 6572
diff changeset
   908
			else
ce92be4d7a8d (svn r9053) -Change [Config]: removed unneeded stuff for windows
glx
parents: 6572
diff changeset
   909
				LIBS="$LIBS `$sdl_config --libs`"
ce92be4d7a8d (svn r9053) -Change [Config]: removed unneeded stuff for windows
glx
parents: 6572
diff changeset
   910
			fi
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   911
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   912
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   913
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   914
	if [ "$with_cocoa" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   915
		CFLAGS="$CFLAGS -DWITH_COCOA"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   916
		LIBS="$LIBS -F/System/Library/Frameworks -framework Cocoa -framework Carbon -framework AudioUnit"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   917
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   918
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   919
	if [ "$with_zlib" != "0" ]; then
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   920
		if [ "$enable_static" != "0" ] && [ "$os" != "OSX" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   921
			LIBS="$LIBS $zlib"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   922
		else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   923
			LIBS="$LIBS -lz"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   924
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   925
		CFLAGS="$CFLAGS -DWITH_ZLIB"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   926
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   927
9419
0736fa1c5d26 (svn r9219) [NoAI] -Fix: fix up the configure to use the 3rdparty squirrel (and not the system-one)
truelight
parents: 9363
diff changeset
   928
	# 64bit machines need -D_SQ64
0736fa1c5d26 (svn r9219) [NoAI] -Fix: fix up the configure to use the 3rdparty squirrel (and not the system-one)
truelight
parents: 9363
diff changeset
   929
	if [ "$cpu_type" = "64" ]; then
0736fa1c5d26 (svn r9219) [NoAI] -Fix: fix up the configure to use the 3rdparty squirrel (and not the system-one)
truelight
parents: 9363
diff changeset
   930
		CFLAGS="$CFLAGS -D_SQ64"
9363
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
   931
	fi
9423
6303307e17f1 (svn r9224) [NoAI] -Change: move squirrel source to our src/ tree
truelight
parents: 9419
diff changeset
   932
	CFLAGS="$CFLAGS -I$ROOT_DIR/src/3rdparty/squirrel/include"
9363
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
   933
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   934
	if [ -n "$png_config" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   935
		CFLAGS="$CFLAGS -DWITH_PNG"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   936
		CFLAGS="$CFLAGS `$png_config --cppflags --I_opts | tr '\n\r' '  '`"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   937
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   938
		# The extra flags are unneeded for latest libpng-config, but some versions are so broken...
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   939
		if [ "$enable_static" != "0" ]; then
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   940
			if [ "$os" = "OSX" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   941
				LIBS="$LIBS `$png_config --prefix`/lib/libpng.a"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   942
			else
6568
ab03b75e7b00 (svn r9045) -Fix [Config]: libpng-config --ldflags returns --libs and -L_opts too, no need to call it an extra time (double -lpng12 in LDFLAGS)
truelight
parents: 6567
diff changeset
   943
				LIBS="$LIBS `$png_config --static --ldflags | tr '\n\r' '  '`"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   944
			fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   945
		else
6568
ab03b75e7b00 (svn r9045) -Fix [Config]: libpng-config --ldflags returns --libs and -L_opts too, no need to call it an extra time (double -lpng12 in LDFLAGS)
truelight
parents: 6567
diff changeset
   946
			LIBS="$LIBS `$png_config --ldflags | tr '\n\r' '  '`"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   947
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   948
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   949
6567
aa762c70a663 (svn r9044) -Fix [Config]: add fontconfig before freetype, as in static order is important
truelight
parents: 6564
diff changeset
   950
	if [ -n "$fontconfig_config" ]; then
aa762c70a663 (svn r9044) -Fix [Config]: add fontconfig before freetype, as in static order is important
truelight
parents: 6564
diff changeset
   951
		CFLAGS="$CFLAGS -DWITH_FONTCONFIG"
aa762c70a663 (svn r9044) -Fix [Config]: add fontconfig before freetype, as in static order is important
truelight
parents: 6564
diff changeset
   952
		CFLAGS="$CFLAGS `$fontconfig_config --cflags | tr '\n\r' '  '`"
aa762c70a663 (svn r9044) -Fix [Config]: add fontconfig before freetype, as in static order is important
truelight
parents: 6564
diff changeset
   953
aa762c70a663 (svn r9044) -Fix [Config]: add fontconfig before freetype, as in static order is important
truelight
parents: 6564
diff changeset
   954
		if [ "$enable_static" != "0" ]; then
aa762c70a663 (svn r9044) -Fix [Config]: add fontconfig before freetype, as in static order is important
truelight
parents: 6564
diff changeset
   955
			if [ "$os" = "OSX" ]; then
6569
bc3911eeccea (svn r9046) -Fix r9041: added a comment to make clear why we don't use --prefix here
truelight
parents: 6568
diff changeset
   956
				# fontconfig_config goes via pkg-config on all systems, which doesn't know --prefix
6570
df82d4634996 (svn r9047) -Fix [FS#651]: request static deps from fontconfig in OSX
truelight
parents: 6569
diff changeset
   957
				# Also, despite the reason we link to the .a file ourself (because we can't use -static), we do need to ask pkg-config about possible other deps
df82d4634996 (svn r9047) -Fix [FS#651]: request static deps from fontconfig in OSX
truelight
parents: 6569
diff changeset
   958
				LIBS="$LIBS `$fontconfig_config --variable=prefix`/lib/libfontconfig.a `$fontconfig_config --libs --static | sed s/-lfontconfig//`"
6567
aa762c70a663 (svn r9044) -Fix [Config]: add fontconfig before freetype, as in static order is important
truelight
parents: 6564
diff changeset
   959
			else
aa762c70a663 (svn r9044) -Fix [Config]: add fontconfig before freetype, as in static order is important
truelight
parents: 6564
diff changeset
   960
				LIBS="$LIBS `$fontconfig_config --libs --static | tr '\n\r' '  '`"
aa762c70a663 (svn r9044) -Fix [Config]: add fontconfig before freetype, as in static order is important
truelight
parents: 6564
diff changeset
   961
			fi
aa762c70a663 (svn r9044) -Fix [Config]: add fontconfig before freetype, as in static order is important
truelight
parents: 6564
diff changeset
   962
		else
aa762c70a663 (svn r9044) -Fix [Config]: add fontconfig before freetype, as in static order is important
truelight
parents: 6564
diff changeset
   963
			LIBS="$LIBS `$fontconfig_config --libs | tr '\n\r' '  '`"
aa762c70a663 (svn r9044) -Fix [Config]: add fontconfig before freetype, as in static order is important
truelight
parents: 6564
diff changeset
   964
		fi
aa762c70a663 (svn r9044) -Fix [Config]: add fontconfig before freetype, as in static order is important
truelight
parents: 6564
diff changeset
   965
	fi
aa762c70a663 (svn r9044) -Fix [Config]: add fontconfig before freetype, as in static order is important
truelight
parents: 6564
diff changeset
   966
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   967
	if [ -n "$freetype_config" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   968
		CFLAGS="$CFLAGS -DWITH_FREETYPE"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   969
		CFLAGS="$CFLAGS `$freetype_config --cflags | tr '\n\r' '  '`"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   970
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   971
		if [ "$enable_static" != "0" ]; then
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   972
			if [ "$os" = "OSX" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   973
				LIBS="$LIBS `$freetype_config --prefix`/lib/libfreetype.a"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   974
			else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   975
				# Is it possible to do static with freetype, if so: how?
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   976
				LIBS="$LIBS `$freetype_config --libs | tr '\n\r' '  '`"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   977
			fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   978
		else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   979
			LIBS="$LIBS `$freetype_config --libs | tr '\n\r' '  '`"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   980
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   981
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   982
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   983
	if [ "$with_direct_music" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   984
		CFLAGS="$CFLAGS -DWIN32_ENABLE_DIRECTMUSIC_SUPPORT"
6517
0bb604919089 (svn r8970) -Fix (win32): suppress the warnings coming from the DirectX includes for GCC 4.0+. Also clearify commit r8968 in-code
truelight
parents: 6515
diff changeset
   985
		# GCC 4.0+ doesn't like the DirectX includes (gives tons of
0bb604919089 (svn r8970) -Fix (win32): suppress the warnings coming from the DirectX includes for GCC 4.0+. Also clearify commit r8968 in-code
truelight
parents: 6515
diff changeset
   986
		#  warnings on it we won't be able to fix). For now just
0bb604919089 (svn r8970) -Fix (win32): suppress the warnings coming from the DirectX includes for GCC 4.0+. Also clearify commit r8968 in-code
truelight
parents: 6515
diff changeset
   987
		#  suppress those warnings.
0bb604919089 (svn r8970) -Fix (win32): suppress the warnings coming from the DirectX includes for GCC 4.0+. Also clearify commit r8968 in-code
truelight
parents: 6515
diff changeset
   988
		if [ $cc_version -ge 40 ]; then
0bb604919089 (svn r8970) -Fix (win32): suppress the warnings coming from the DirectX includes for GCC 4.0+. Also clearify commit r8968 in-code
truelight
parents: 6515
diff changeset
   989
			CFLAGS="$CFLAGS -Wno-non-virtual-dtor"
0bb604919089 (svn r8970) -Fix (win32): suppress the warnings coming from the DirectX includes for GCC 4.0+. Also clearify commit r8968 in-code
truelight
parents: 6515
diff changeset
   990
		fi
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   991
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   992
6361
8fc35d15114f (svn r8758) -Fix r8757: wrong variable to check libtimidity on if it is found or not
truelight
parents: 6360
diff changeset
   993
	if [ -n "$libtimidity" ]; then
6360
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
   994
		if [ "$enable_static" != "0" ]; then
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
   995
			LIBS="$LIBS $libtimidity"
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
   996
		else
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
   997
			LIBS="$LIBS -ltimidity"
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
   998
		fi
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
   999
		CFLAGS="$CFLAGS -DLIBTIMIDITY"
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1000
	fi
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1001
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1002
	if [ "$with_iconv" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1003
		CFLAGS="$CFLAGS -DWITH_ICONV"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1004
		LIBS="$LIBS -liconv"
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1005
		if [ "$with_iconv" != "2" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1006
			CFLAGS="$CFLAGS -I$with_iconv/include"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1007
			LIBS="$LIBS -L$with_iconv/lib"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1008
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1009
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1010
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1011
	if [ -n "$with_midi" ]; then
5800
302fcf9afa49 (svn r7922) -Fix: bad escaping in CFLAGS
glx
parents: 5792
diff changeset
  1012
		CFLAGS="$CFLAGS -DEXTERNAL_PLAYER=\\\\\"$with_midi\\\\\""
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1013
	fi
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1014
	if [ -n "$with_midi_arg" ]; then
5800
302fcf9afa49 (svn r7922) -Fix: bad escaping in CFLAGS
glx
parents: 5792
diff changeset
  1015
		CFLAGS="$CFLAGS -DMIDI_ARG=\\\\\"$with_midi_arg\\\\\""
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1016
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1017
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1018
	if [ "$enable_dedicated" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1019
		CFLAGS="$CFLAGS -DDEDICATED"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1020
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1021
6554
28f436faed81 (svn r9030) [Config] -Add: added --enable-unicode, which enables unicode (mostly for windows). Enabled by default on WIN32 (makes win9x fail, so use --disable-unicode if you produce binaries for win9x)
truelight
parents: 6546
diff changeset
  1022
	if [ "$enable_unicode" != "0" ]; then
28f436faed81 (svn r9030) [Config] -Add: added --enable-unicode, which enables unicode (mostly for windows). Enabled by default on WIN32 (makes win9x fail, so use --disable-unicode if you produce binaries for win9x)
truelight
parents: 6546
diff changeset
  1023
		CFLAGS="$CFLAGS -DUNICODE -D_UNICODE"
28f436faed81 (svn r9030) [Config] -Add: added --enable-unicode, which enables unicode (mostly for windows). Enabled by default on WIN32 (makes win9x fail, so use --disable-unicode if you produce binaries for win9x)
truelight
parents: 6546
diff changeset
  1024
	fi
28f436faed81 (svn r9030) [Config] -Add: added --enable-unicode, which enables unicode (mostly for windows). Enabled by default on WIN32 (makes win9x fail, so use --disable-unicode if you produce binaries for win9x)
truelight
parents: 6546
diff changeset
  1025
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1026
	if [ "$enable_network" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1027
		CFLAGS="$CFLAGS -DENABLE_NETWORK"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1028
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1029
		if [ "$os" = "BEOS" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1030
			LDFLAGS="$LDFLAGS -lbind -lsocket"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1031
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1032
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1033
		if [ "$os" = "SUNOS" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1034
			LDFLAGS="$LDFLAGS -lnsl -lsocket"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1035
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1036
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1037
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1038
	if [ "$enable_static" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1039
		# OSX can't handle -static in LDFLAGS
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1040
		if [ "$os" != "OSX" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1041
			LDFLAGS="$LDFLAGS -static"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1042
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1043
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1044
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1045
	if [ "$enable_assert" = "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1046
		CFLAGS="$CFLAGS -DNDEBUG"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1047
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1048
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1049
	if [ "$enable_osx_g5" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1050
		CFLAGS="$CFLAGS -mtune=970 -mcpu=970 -mpowerpc-gpopt"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1051
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1052
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1053
	if [ "$with_osx_sysroot" != "0" ] && [ "$with_osx_sysroot" != "3" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1054
		CFLAGS="$CFLAGS -isysroot /Developer/SDKs/MacOSX$with_osx_sysroot.sdk"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1055
		LDFLAGS="$LDFLAGS -Wl,-syslibroot,/Developer/SDKs/MacOSX$with_osx_sysroot.sdk"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1056
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1057
9628
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
  1058
	if [ -n "$personal_dir" ]; then
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
  1059
		CFLAGS="$CFLAGS -DWITH_PERSONAL_DIR -DPERSONAL_DIR=\\\\\"$personal_dir\\\\\""
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1060
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1061
9628
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
  1062
	CFLAGS="$CFLAGS -DGLOBAL_DATA_DIR=\\\\\"$prefix_dir/$data_dir\\\\\""
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1063
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1064
	log 1 "using CFLAGS... $CFLAGS $CC_CFLAGS"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1065
	log 1 "using LDFLAGS... $LIBS $LDFLAGS"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1066
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1067
	# Makedepend doesn't like something like: -isysroot /OSX/blabla
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1068
	#  so convert it to: -isysroot -OSX/blabla. makedepend just ignores
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1069
	#  any - command it doesn't know, so we are pretty save.
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1070
	# Lovely hackish, not?
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1071
	# Btw, this almost always comes from outside the configure, so it is
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1072
	#  not something we can control.
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1073
	if [ "$with_makedepend" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1074
		cflags_makedep="` echo "$CFLAGS" | sed 's# /# -#g'`"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1075
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1076
		makedepend=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1077
	fi
9626
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
  1078
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
  1079
	if [ "$with_distcc" != "0" ]; then
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
  1080
		cc_host="$distcc $cc_host"
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
  1081
		cxx_host="$distcc $cxx_host"
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
  1082
		log 1 ""
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
  1083
		log 1 " NOTICE: remind yourself to use 'make -jN' to make use of distcc"
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
  1084
		log 1 ""
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
  1085
	fi
9628
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
  1086
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
  1087
	if [ "$with_ccache" != "0" ]; then
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
  1088
		cc_host="$ccache $cc_host"
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
  1089
		cxx_host="$ccache $cxx_host"
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
  1090
	fi
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1091
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1092
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1093
check_compiler() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1094
	# Params:
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1095
	# $1 - Type for message (build / host)
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1096
	# $2 - What to fill with the found compiler
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1097
	# $3 - System to try
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1098
	# $4 - Compiler to try
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1099
	# $5 - Env-setting to try
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1100
	# $6 - GCC alike to try
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1101
	# $7 - CC alike to try
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1102
	# $8 - "0" gcc, "1" g++, "2" windres, "3" strip, "4" lipo
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1103
	# $9 - What the command is to check for
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1104
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1105
	if [ -n "$3" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1106
		# Check for system
6232
09125a3ceba4 (svn r8680) [Configure] -Codechange: allow a bit more flexible code in check_compiler
truelight
parents: 6231
diff changeset
  1107
		if [ -z "$6" ]; then
09125a3ceba4 (svn r8680) [Configure] -Codechange: allow a bit more flexible code in check_compiler
truelight
parents: 6231
diff changeset
  1108
			compiler="$3"
09125a3ceba4 (svn r8680) [Configure] -Codechange: allow a bit more flexible code in check_compiler
truelight
parents: 6231
diff changeset
  1109
		else
09125a3ceba4 (svn r8680) [Configure] -Codechange: allow a bit more flexible code in check_compiler
truelight
parents: 6231
diff changeset
  1110
			compiler="$3-$6"
09125a3ceba4 (svn r8680) [Configure] -Codechange: allow a bit more flexible code in check_compiler
truelight
parents: 6231
diff changeset
  1111
		fi
09125a3ceba4 (svn r8680) [Configure] -Codechange: allow a bit more flexible code in check_compiler
truelight
parents: 6231
diff changeset
  1112
		machine=`eval $compiler $9 2>/dev/null`
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1113
		ret=$?
6232
09125a3ceba4 (svn r8680) [Configure] -Codechange: allow a bit more flexible code in check_compiler
truelight
parents: 6231
diff changeset
  1114
		eval "$2=$compiler"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1115
6232
09125a3ceba4 (svn r8680) [Configure] -Codechange: allow a bit more flexible code in check_compiler
truelight
parents: 6231
diff changeset
  1116
		log 2 "executing $compiler $9"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1117
		log 2 "  returned $machine"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1118
		log 2 "  exit code $ret"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1119
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1120
		if ( [ -z "$machine" ] && [ "$8" != "3" ] ) || [ "$ret" != "0" ]; then
6232
09125a3ceba4 (svn r8680) [Configure] -Codechange: allow a bit more flexible code in check_compiler
truelight
parents: 6231
diff changeset
  1121
			log 1 "checking $1... $compiler not found"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1122
			log 1 "I couldn't detect any $6 binary for $3"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1123
			exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1124
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1125
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1126
		if [ "$machine" != "$3" ] && ( [ "$8" = "0" ] || [ "$8" = "1" ] ); then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1127
			log 1 "checking $1... expected $3, found $machine"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1128
			log 1 "the compiler suggests it doesn't build code for the machine you specified"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1129
			exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1130
		fi
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1131
	elif [ -n "$4" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1132
		# Check for manual compiler
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1133
		machine=`$4 $9 2>/dev/null`
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1134
		ret=$?
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1135
		eval "$2=$4"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1136
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1137
		log 2 "executing $4 $9"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1138
		log 2 "  returned $machine"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1139
		log 2 "  exit code $ret"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1140
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1141
		if ( [ -z "$machine" ] && [ "$8" != "3" ] ) || [ "$ret" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1142
			log 1 "checking $1... $4 not found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1143
			log 1 "the selected binary doesn't seem to be a $6 binary"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1144
			exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1145
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1146
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1147
		# Nothing given, autodetect
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1148
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1149
		if [ -n "$5" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1150
			machine=`$5 $9 2>/dev/null`
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1151
			ret=$?
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1152
			eval "$2=$5"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1153
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1154
			log 2 "executing $5 $9"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1155
			log 2 "  returned $machine"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1156
			log 2 "  exit code $ret"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1157
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1158
			# The user defined a GCC that doesn't reply to $9.. abort
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1159
			if ( [ -z "$machine" ] && [ "$8" != "3" ] ) || [ "$ret" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1160
				log 1 "checking $1... $5 unusable"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1161
				log 1 "the CC environment variable is set, but it doesn't seem to be a $6 binary"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1162
				log 1 "please redefine the CC/CXX environment to a $6 binary"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1163
				exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1164
			fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1165
		else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1166
			log 2 "checking $1... CC/CXX not set (skipping)"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1167
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1168
			# No $5, so try '$6'
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1169
			machine=`$6 $9 2>/dev/null`
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1170
			ret=$?
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1171
			eval "$2=$6"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1172
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1173
			log 2 "executing $6 $9"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1174
			log 2 "  returned $machine"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1175
			log 2 "  exit code $ret"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1176
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1177
			if ( [ -z "$machine" ] && [ "$8" != "3" ] ) || [ "$ret" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1178
				# Maybe '$7'?
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1179
				machine=`$7 $9 2>/dev/null`
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1180
				ret=$?
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1181
				eval "$2=$7"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1182
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1183
				log 2 "executing $7 $9"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1184
				log 2 "  returned $machine"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1185
				log 2 "  exit code $ret"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1186
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1187
				# All failed, abort
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1188
				if [ -z "$machine" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1189
					log 1 "checking $1... $6 not found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1190
					log 1 "I couldn't detect any $6 binary on your system"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1191
					log 1 "please define the CC/CXX environment to where it is located"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1192
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1193
					exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1194
				fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1195
			fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1196
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1197
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1198
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1199
	if [ "$8" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1200
		eval "res=\$$2"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1201
		log 1 "checking $1... $res"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1202
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1203
		log 1 "checking $1... $machine"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1204
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1205
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1206
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1207
check_build() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1208
	check_compiler "build system type" "cc_build" "$build" "$cc_build" "$CC" "gcc" "cc" "0" "-dumpmachine"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1209
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1210
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1211
check_host() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1212
	# By default the host is the build
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1213
	if [ -z "$host" ]; then host="$build"; fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1214
	check_compiler "host system type" "cc_host" "$host" "$cc_host" "$CC" "gcc" "cc" "0" "-dumpmachine"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1215
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1216
5838
9c3129cb019b (svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b.
rubidium
parents: 5829
diff changeset
  1217
check_cxx_build() {
6231
b81890a2b692 (svn r8679) [Configure] -Fix: 'checking for' and 'checking' was used mixed, now only 'checking' is used
truelight
parents: 6230
diff changeset
  1218
	check_compiler "build c++" "cxx_build" "$build" "$cxx_build" "$CXX" "g++" "c++" 1 "-dumpmachine"
5838
9c3129cb019b (svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b.
rubidium
parents: 5829
diff changeset
  1219
}
9c3129cb019b (svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b.
rubidium
parents: 5829
diff changeset
  1220
9c3129cb019b (svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b.
rubidium
parents: 5829
diff changeset
  1221
check_cxx_host() {
9c3129cb019b (svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b.
rubidium
parents: 5829
diff changeset
  1222
	# By default the host is the build
9c3129cb019b (svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b.
rubidium
parents: 5829
diff changeset
  1223
	if [ -z "$host" ]; then host="$build"; fi
6231
b81890a2b692 (svn r8679) [Configure] -Fix: 'checking for' and 'checking' was used mixed, now only 'checking' is used
truelight
parents: 6230
diff changeset
  1224
	check_compiler "host c++" "cxx_host" "$host" "$cxx_host" "$CXX" "g++" "c++" 1 "-dumpmachine"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1225
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1226
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1227
check_windres() {
6004
03795fd01cb8 (svn r8304) [WinCE] -Add: added configure detection for WinCE.
truelight
parents: 5838
diff changeset
  1228
	if [ "$os" = "MINGW" ] || [ "$os" = "CYGWIN" ] || [ "$os" = "WINCE" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1229
		check_compiler "host windres" "windres" "$host" "$windres" "$WINDRES" "windres" "windres" "2" "-V"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1230
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1231
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1232
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1233
check_strip() {
5810
7959ee2ab55a (svn r7959) [Configure] -Fix: OS2-gcc needs to get stripping via gcc, because it needs to be feed to emxbind at link-time.
truelight
parents: 5809
diff changeset
  1234
	if [ "$os" = "OS2" ]; then
7959ee2ab55a (svn r7959) [Configure] -Fix: OS2-gcc needs to get stripping via gcc, because it needs to be feed to emxbind at link-time.
truelight
parents: 5809
diff changeset
  1235
		# OS2 via gcc is a bit weird.. stripping HAS to be done via emxbind, which is via gcc directly
6231
b81890a2b692 (svn r8679) [Configure] -Fix: 'checking for' and 'checking' was used mixed, now only 'checking' is used
truelight
parents: 6230
diff changeset
  1236
		echo "checking host strip... using gcc -s option"
5810
7959ee2ab55a (svn r7959) [Configure] -Fix: OS2-gcc needs to get stripping via gcc, because it needs to be feed to emxbind at link-time.
truelight
parents: 5809
diff changeset
  1237
	elif [ "$os" = "OSX" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1238
		# Most targets have -V in strip, to see if they exists... OSX doesn't.. so execute something
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1239
		echo "int main(int argc, char *argv[]) { }" > strip.test.c
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1240
		$cc_host strip.test.c -o strip.test
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1241
		check_compiler "host strip" "strip" "$host" "$strip" "$STRIP" "strip" "strip" "3" "strip.test"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1242
		rm -f strip.test.c strip.test
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1243
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1244
		check_compiler "host strip" "strip" "$host" "$strip" "$STRIP" "strip" "strip" "3" "-V"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1245
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1246
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1247
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1248
check_lipo() {
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1249
	if [ "$os" = "OSX" ] && [ "$enable_universal" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1250
		echo "int main(int argc, char *argv[]) { }" > lipo.test.c
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1251
		$cc_host lipo.test.c -o lipo.test
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1252
		check_compiler "host lipo" "lipo" "$host" "$lipo" "$LIPO" "lipo" "lipo" "4" "-info lipo.test"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1253
		rm -f lipo.test.c lipo.test
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1254
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1255
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1256
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1257
check_direct_music() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1258
	echo "
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1259
		#include <windows.h>
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1260
		#include <dmksctrl.h>
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1261
		#include <dmusici.h>
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1262
		#include <dmusicc.h>
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1263
		#include <dmusicf.h>
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1264
		int main(int argc, char *argv[]) { }" > direct_music.test.c
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1265
	$cxx_host $CFLAGS direct_music.test.c -o direct_music.test 2> /dev/null
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1266
	res=$?
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1267
	rm -f direct_music.test.c direct_music.test
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1268
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1269
	if [ "$res" != "0" ]; then
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1270
		if [ "$with_direct_music" = "2" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1271
			log 1 "configure: error: direct-music is not available on this system"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1272
			exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1273
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1274
		with_direct_music="0"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1275
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1276
		log 1 "checking direct-music... not found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1277
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1278
		log 1 "checking direct-music... found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1279
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1280
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1281
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1282
check_makedepend() {
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1283
	if [ "$with_makedepend" = "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1284
		log 1 "checking makedepend... disabled"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1285
		return
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1286
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1287
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1288
	if [ "$with_makedepend" = "1" ] || [ "$with_makedepend" = "2" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1289
		makedepend="makedepend"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1290
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1291
		makedepend="$with_makedepend"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1292
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1293
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1294
	rm -f makedepend.tmp
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1295
	touch makedepend.tmp
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1296
	res=`$makedepend -fmakedepend.tmp 2>/dev/null`
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1297
	res=$?
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1298
	log 2 "executing $makedepend -f makedepend.tmp"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1299
	log 2 "  returned `cat makedepend.tmp`"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1300
	log 2 "  exit code $ret"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1301
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1302
	if [ ! -s makedepend.tmp ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1303
		rm -f makedepend.tmp makedepend.tmp.bak
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1304
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1305
		if [ "$with_makedepend" = "2" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1306
			log 1 "checking makedepend... not found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1307
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1308
			log 1 "I couldn't detect any makedepend on your system"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1309
			log 1 "please locate it via --makedepend=[binary]"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1310
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1311
			exit 1
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1312
		elif [ "$with_makedepend" != "1" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1313
			log 1 "checking makedepend... $makedepend not found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1314
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1315
			log 1 "the selected file doesn't seem to be a valid makedepend binary"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1316
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1317
			exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1318
		else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1319
			log 1 "checking makedepend... not found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1320
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1321
			with_makedepend="0"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1322
			return
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1323
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1324
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1325
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1326
	rm -f makedepend.tmp makedepend.tmp.bak
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1327
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1328
	log 1 "checking makedepend... $makedepend"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1329
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1330
6407
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1331
detect_awk() {
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1332
	# Not all awks allow gsub(), so we test for that here! It is in fact all we need...
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1333
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1334
	# These awks are known to work. Test for them explicit
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1335
	awks="gawk mawk nawk"
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1336
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1337
	awk_prefix="echo \"a.c b.c c.c\" | tr ' ' \\\\n | "
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1338
	awk_param="' { ORS = \" \" } /\.c$/   { gsub(\".c$\",   \".o\", \$0); print \$0; }' 2>/dev/null"
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1339
	awk_result="a.o b.o c.o "
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1340
	log 2 "Detecing awk..."
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1341
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1342
	log 2 "Trying: $awk_prefix $awk $awk_param"
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1343
	res=`eval $awk_prefix $awk $awk_param`
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1344
	log 2 "Result: '$res'"
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1345
	if [ "$res" != "$awk_result" ] && [ "$awk" = "awk" ]; then
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1346
		# User didn't supply his own awk, so try to detect some other known working names for an awk
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1347
		for awk in $awks; do
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1348
			log 2 "Trying: $awk_prefix $awk $awk_param"
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1349
			res=`eval $awk_prefix $awk $awk_param`
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1350
			log 2 "Result: '$res'"
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1351
			if [ "$res" = "$awk_result" ]; then break; fi
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1352
		done
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1353
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1354
		if [ "$res" != "$awk_result" ]; then
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1355
			log 1 "checking awk... not found"
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1356
			log 1 "configure: error: no awk found"
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1357
			log 1 "configure: error: please install one of the following: $awks"
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1358
			exit 1
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1359
		fi
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1360
	fi
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1361
	if [ "$res" != "$awk_result" ]; then
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1362
		log 1 "checking awk... not found"
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1363
		log 1 "configure: error: you supplied '$awk' but it doesn't seem a valid gawk or mawk"
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1364
		exit 1
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1365
	fi
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1366
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1367
	log 1 "checking awk... $awk"
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1368
}
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1369
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1370
detect_os() {
6403
6165d686c6c2 (svn r8810) [Configure] -Fix: "" variables if you test them, else if they are empty they return lovely errors (tnx to Celester for finding thisone ;))
truelight
parents: 6372
diff changeset
  1371
	if [ "$os" = "DETECT" ]; then
9624
b71483f2330f (svn r9915) [NoAI] -Sync with trunk -r9815:9914
glx
parents: 9623
diff changeset
  1372
		# Detect UNIX, OSX, FREEBSD, OPENBSD, MORPHOS, BEOS, SUNOS, CYGWIN, MINGW, OS2, WINCE, and PSP
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1373
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1374
		# Try first via dumpmachine, then via uname
6407
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1375
		os=`echo "$host" | tr '[A-Z]' '[a-z]' | $awk '
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1376
					/linux/        { print "UNIX";    exit}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1377
					/darwin/       { print "OSX";     exit}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1378
					/freebsd/      { print "FREEBSD"; exit}
9624
b71483f2330f (svn r9915) [NoAI] -Sync with trunk -r9815:9914
glx
parents: 9623
diff changeset
  1379
					/openbsd/      { print "OPENBSD"; exit}
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1380
					/morphos/      { print "MORPHOS"; exit}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1381
					/beos/         { print "BEOS";    exit}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1382
					/sunos/        { print "SUNOS";   exit}
6546
d420506b08d8 (svn r9017) [Config] -Fix: if 'solaris' is in gcc dumpmachine, we have SunOS
truelight
parents: 6517
diff changeset
  1383
					/solaris/      { print "SUNOS";   exit}
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1384
					/cygwin/       { print "CYGWIN";  exit}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1385
					/mingw/        { print "MINGW";   exit}
5790
fee3af90258e (svn r7881) [Configure] -Fix: OS2 GCC indentifies itself with os2, not os/2
truelight
parents: 5789
diff changeset
  1386
					/os2/          { print "OS2";     exit}
6004
03795fd01cb8 (svn r8304) [WinCE] -Add: added configure detection for WinCE.
truelight
parents: 5838
diff changeset
  1387
					/wince/        { print "WINCE";   exit}
6208
ff9b5772fb65 (svn r8628) [PSP] -Add: added configure support for the PlayStation Portable target
truelight
parents: 6192
diff changeset
  1388
					/psp/          { print "PSP";     exit}
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1389
		'`
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1390
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1391
		if [ -z "$os" ]; then
6407
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  1392
			os=`LC_ALL=C uname | tr '[A-Z]' '[a-z]' | $awk '
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1393
					/linux/        { print "UNIX";    exit}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1394
					/darwin/       { print "OSX";     exit}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1395
					/freebsd/      { print "FREEBSD"; exit}
9624
b71483f2330f (svn r9915) [NoAI] -Sync with trunk -r9815:9914
glx
parents: 9623
diff changeset
  1396
					/openbsd/      { print "OPENBSD"; exit}
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1397
					/morphos/      { print "MORPHOS"; exit}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1398
					/beos/         { print "BEOS";    exit}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1399
					/sunos/        { print "SUNOS";   exit}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1400
					/cygwin/       { print "CYGWIN";  exit}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1401
					/mingw/        { print "MINGW";   exit}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1402
					/os\/2/        { print "OS2";     exit}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1403
			'`
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1404
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1405
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1406
		if [ -z "$os" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1407
			log 1 "detecting OS... none detected"
9624
b71483f2330f (svn r9915) [NoAI] -Sync with trunk -r9815:9914
glx
parents: 9623
diff changeset
  1408
			log 1 "I couldn't detect your OS. Please use --os=OS to force one"
b71483f2330f (svn r9915) [NoAI] -Sync with trunk -r9815:9914
glx
parents: 9623
diff changeset
  1409
			log 1 "Allowed values are: UNIX, OSX, FREEBSD, OPENBSD, MORPHOS, BEOS, SUNOS, CYGWIN, MINGW, OS2, WINCE, and PSP"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1410
			exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1411
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1412
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1413
		log 1 "detecting OS... $os"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1414
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1415
		log 1 "forcing OS... $os"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1416
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1417
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1418
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1419
detect_sdl() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1420
	# 0 means no, 1 is auto-detect, 2 is force
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1421
	if [ "$with_sdl" = "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1422
		log 1 "checking SDL... disabled"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1423
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1424
		sdl_config=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1425
		return 0
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1426
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1427
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1428
	if [ "$with_sdl" = "2" ] && [ "$with_cocoa" = "2" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1429
		log 1 "configure: error: it is impossible to compile both SDL and COCOA"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1430
		log 1 "configure: error: please deselect one of them and try again"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1431
		exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1432
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1433
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1434
	if [ "$with_sdl" = "2" ] && [ "$enable_dedicated" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1435
		log 1 "configure: error: it is impossible to compile a dedicated with SDL"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1436
		log 1 "configure: error: please deselect one of them and try again"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1437
		exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1438
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1439
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1440
	if [ "$enable_dedicated" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1441
		log 1 "checking SDL... skipping"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1442
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1443
		sdl_config=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1444
		return 0
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1445
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1446
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1447
	# By default on OSX we don't use SDL. The rest is auto-detect
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1448
	if [ "$with_sdl" = "1" ] && [ "$os" = "OSX" ] && [ "$with_cocoa" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1449
		log 1 "checking SDL... OSX, skipping"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1450
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1451
		sdl_config=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1452
		return 0
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1453
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1454
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1455
	if [ "$with_sdl" = "1" ] || [ "$with_sdl" = "" ] || [ "$with_sdl" = "2" ]; then
5788
e2d872ebfb61 (svn r7878) Remove the long gone sdl11-config (again)
tron
parents: 5787
diff changeset
  1456
		sdl_config="sdl-config"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1457
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1458
		sdl_config="$with_sdl"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1459
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1460
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1461
	version=`$sdl_config --version 2>/dev/null`
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1462
	ret=$?
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1463
	log 2 "executing $sdl_config --version"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1464
	log 2 "  returned $version"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1465
	log 2 "  exit code $ret"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1466
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1467
	if [ -z "$version" ] || [ "$ret" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1468
		log 1 "checking SDL... not found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1469
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1470
		# It was forced, so it should be found.
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1471
		if [ "$with_sdl" != "1" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1472
			log 1 "configure: error: sdl-config couldn't be found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1473
			log 1 "configure: error: you supplied '$with_sdl', but it seems invalid"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1474
			exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1475
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1476
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1477
		sdl_config=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1478
		return 0
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1479
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1480
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1481
	log 1 "checking SDL... found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1482
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1483
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1484
detect_cocoa() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1485
	# 0 means no, 1 is auto-detect, 2 is force
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1486
	if [ "$with_cocoa" = "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1487
		log 1 "checking COCOA... disabled"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1488
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1489
		return 0
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1490
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1491
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1492
	if [ "$with_cocoa" = "2" ] && [ "$enable_dedicated" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1493
		log 1 "configure: error: it is impossible to compile a dedicated with COCOA"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1494
		log 1 "configure: error: please deselect one of them and try again"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1495
		exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1496
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1497
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1498
	if [ "$enable_dedicated" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1499
		log 1 "checking COCOA... skipping"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1500
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1501
		with_cocoa="0"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1502
		return 0
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1503
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1504
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1505
	# By default on OSX we use COCOA. The rest doesn't support it
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1506
	if [ "$with_cocoa" = "1" ] && [ "$os" != "OSX" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1507
		log 1 "checking COCOA... not OSX, skipping"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1508
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1509
		with_cocoa="0"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1510
		return 0
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1511
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1512
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1513
	if [ "$os" != "OSX" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1514
		log 1 "checking COCOA... not OSX"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1515
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1516
		log 1 "configure: error: COCOA video driver is only supported for OSX"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1517
		exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1518
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1519
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1520
	log 1 "checking COCOA... found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1521
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1522
6360
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1523
detect_library() {
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1524
	# $1 - config-param ($with_zlib value)
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1525
	# $2 - library name ('zlib', sets $zlib)
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1526
	# $3 - static library name (libz.a)
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1527
	# $4 - header name (zlib.h)
9363
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1528
	# $5 - force static (if non-empty)
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1529
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1530
	if [ -n "$5" ]; then force_static="1"; fi
6360
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1531
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1532
	# 0 means no, 1 is auto-detect, 2 is force
6360
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1533
	if [ "$1" = "0" ]; then
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1534
		log 1 "checking $2... disabled"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1535
6360
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1536
		eval "$2=\"\""
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1537
		return 0
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1538
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1539
6360
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1540
	log 2 "detecting $2"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1541
6360
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1542
	if [ "$1" = "1" ] || [ "$1" = "" ] || [ "$1" = "2" ]; then
9629
66dde6412125 (svn r10350) [NoAI] -Sync with trunk r10194:10349
glx
parents: 9628
diff changeset
  1543
		eval "$2=`ls -1 /usr/include/*.h 2>/dev/null | egrep \"\/$4\$\"`"
6360
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1544
		eval "res=\$$2"
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1545
		if [ -z "$res" ]; then
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1546
			log 2 "  trying /usr/include/$4... no"
9629
66dde6412125 (svn r10350) [NoAI] -Sync with trunk r10194:10349
glx
parents: 9628
diff changeset
  1547
			eval "$2=`ls -1 /usr/local/include/*.h 2>/dev/null | egrep \"\/$4\$\"`"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1548
		fi
6360
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1549
		eval "res=\$$2"
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1550
		if [ -z "$res" ]; then
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1551
			log 2 "  trying /usr/local/include/$4... no"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1552
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1553
6360
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1554
		eval "res=\$$2"
9363
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1555
		if [ -n "$res" ] && ( [ -n "$force_static" ] || ( [ "$enable_static" != "0" ] && [ "$os" != "OSX" ] ) ); then
6360
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1556
			eval "res=\$$2"
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1557
			log 2 "  trying $res... found"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1558
			# Now find the static lib, if needed
9629
66dde6412125 (svn r10350) [NoAI] -Sync with trunk r10194:10349
glx
parents: 9628
diff changeset
  1559
			eval "$2=`ls /lib/*.a 2>/dev/null | egrep \"\/$3\$\"`"
6360
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1560
			eval "res=\$$2"
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1561
			if [ -z "$res" ]; then
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1562
				log 2 "  trying /lib/$3... no"
9629
66dde6412125 (svn r10350) [NoAI] -Sync with trunk r10194:10349
glx
parents: 9628
diff changeset
  1563
				eval "$2=`ls /usr/lib/*.a 2>/dev/null | egrep \"\/$3\$\"`"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1564
			fi
6360
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1565
			eval "res=\$$2"
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1566
			if [ -z "$res" ]; then
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1567
				log 2 "  trying /usr/lib/$3... no"
9629
66dde6412125 (svn r10350) [NoAI] -Sync with trunk r10194:10349
glx
parents: 9628
diff changeset
  1568
				eval "$2=`ls /usr/local/lib/*.a 2>/dev/null | egrep \"\/$3\$\"`"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1569
			fi
6360
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1570
			eval "res=\$$2"
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1571
			if [ -z "$res" ]; then
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1572
				log 2 "  trying /usr/local/lib/$3... no"
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1573
				log 1 "configure: error: $2 couldn't be found"
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1574
				log 1 "configure: error: you requested a static link, but I can't find $3"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1575
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1576
				exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1577
			fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1578
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1579
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1580
		# Make sure it exists
6360
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1581
		if [ -f "$1" ]; then
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1582
			eval "$2=`ls $1 2>/dev/null`"
5756
a3db951ee245 (svn r7799) -Fix (r7759): gracefully handle cases where the directory libz.a is in is given via --with-libz.
rubidium
parents: 5754
diff changeset
  1583
		else
6360
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1584
			eval "$2=`ls $1/$3 2>/dev/null`"
5756
a3db951ee245 (svn r7799) -Fix (r7759): gracefully handle cases where the directory libz.a is in is given via --with-libz.
rubidium
parents: 5754
diff changeset
  1585
		fi
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1586
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1587
6360
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1588
	eval "res=\$$2"
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1589
	if [ -z "$res" ]; then
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1590
		log 1 "checking $2... not found"
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1591
		if [ "$1" = "2" ]; then
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1592
			log 1 "configure: error: $2 couldn't be found"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1593
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1594
			exit 1
6360
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1595
		elif [ "$1" != "1" ]; then
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1596
			log 1 "configure: error: $2 couldn't be found"
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1597
			log 1 "configure: error: you supplied '$1', but it seems invalid"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1598
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1599
			exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1600
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1601
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1602
		return 0
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1603
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1604
6360
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1605
	eval "res=\$$2"
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1606
	log 2 "  trying $res... found"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1607
6360
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1608
	log 1 "checking $2... found"
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1609
}
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1610
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1611
detect_zlib() {
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1612
	detect_library "$with_zlib" "zlib" "libz.a" "zlib.h"
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1613
}
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1614
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1615
detect_libtimidity() {
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1616
	detect_library "$with_libtimidity" "libtimidity" "libtimidity.a" "timidity.h"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1617
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1618
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1619
detect_png() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1620
	# 0 means no, 1 is auto-detect, 2 is force
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1621
	if [ "$with_png" = "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1622
		log 1 "checking libpng... disabled"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1623
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1624
		png_config=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1625
		return 0
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1626
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1627
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1628
	if [ "$with_zlib" = "0" ] || [ "$zlib" = "" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1629
		log 1 "configure: error: libpng depends on zlib, which couldn't be found / was disabled"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1630
		log 1 "configure: error: please supply --with-zlib, with a valid zlib location"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1631
		exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1632
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1633
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1634
	if [ "$with_png" = "1" ] || [ "$with_png" = "" ] || [ "$with_png" = "2" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1635
		png_config="libpng-config"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1636
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1637
		png_config="$with_png"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1638
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1639
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1640
	version=`$png_config --version 2>/dev/null`
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1641
	ret=$?
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1642
	log 2 "executing $png_config --version"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1643
	log 2 "  returned $version"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1644
	log 2 "  exit code $ret"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1645
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1646
	if [ -z "$version" ] || [ "$ret" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1647
		log 1 "checking libpng... not found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1648
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1649
		# It was forced, so it should be found.
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1650
		if [ "$with_png" != "1" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1651
			log 1 "configure: error: libpng-config couldn't be found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1652
			log 1 "configure: error: you supplied '$with_png', but it seems invalid"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1653
			exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1654
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1655
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1656
		png_config=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1657
		return 0
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1658
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1659
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1660
	log 1 "checking libpng... found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1661
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1662
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1663
detect_freetype() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1664
	# 0 means no, 1 is auto-detect, 2 is force
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1665
	if [ "$with_freetype" = "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1666
		log 1 "checking libfreetype... disabled"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1667
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1668
		freetype_config=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1669
		return 0
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1670
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1671
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1672
	if [ "$with_zlib" = "0" ] || [ "$zlib" = "" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1673
		log 1 "configure: error: libfreetype depends on zlib, which couldn't be found / was disabled"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1674
		log 1 "configure: error: please supply --with-zlib, with a valid zlib location"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1675
		exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1676
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1677
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1678
	if [ "$with_freetype" = "1" ] || [ "$with_freetype" = "" ] || [ "$with_freetype" = "2" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1679
		freetype_config="freetype-config"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1680
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1681
		freetype_config="$with_freetype"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1682
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1683
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1684
	version=`$freetype_config --version 2>/dev/null`
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1685
	ret=$?
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1686
	log 2 "executing freetype_config --version"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1687
	log 2 "  returned $version"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1688
	log 2 "  exit code $ret"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1689
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1690
	if [ -z "$version" ] || [ "$ret" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1691
		log 1 "checking libfreetype... not found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1692
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1693
		# It was forced, so it should be found.
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1694
		if [ "$with_freetype" != "1" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1695
			log 1 "configure: error: freetype-config couldn't be found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1696
			log 1 "configure: error: you supplied '$with_freetype', but it seems invalid"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1697
			exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1698
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1699
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1700
		freetype_config=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1701
		return 0
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1702
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1703
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1704
	log 1 "checking libfreetype... found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1705
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1706
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1707
detect_fontconfig() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1708
	# 0 means no, 1 is auto-detect, 2 is force
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1709
	if [ "$with_fontconfig" = "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1710
		log 1 "checking libfontconfig... disabled"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1711
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1712
		fontconfig_config=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1713
		return 0
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1714
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1715
6575
ce92be4d7a8d (svn r9053) -Change [Config]: removed unneeded stuff for windows
glx
parents: 6572
diff changeset
  1716
	if [ "$os" = "MINGW" ] || [ "$os" = "CYGWIN" ] || [ "$os" = "WINCE" ]; then
ce92be4d7a8d (svn r9053) -Change [Config]: removed unneeded stuff for windows
glx
parents: 6572
diff changeset
  1717
		log 1 "checking libfontconfig... WIN32, skipping"
ce92be4d7a8d (svn r9053) -Change [Config]: removed unneeded stuff for windows
glx
parents: 6572
diff changeset
  1718
		fontconfig_config=""
ce92be4d7a8d (svn r9053) -Change [Config]: removed unneeded stuff for windows
glx
parents: 6572
diff changeset
  1719
		return 0
ce92be4d7a8d (svn r9053) -Change [Config]: removed unneeded stuff for windows
glx
parents: 6572
diff changeset
  1720
	fi
ce92be4d7a8d (svn r9053) -Change [Config]: removed unneeded stuff for windows
glx
parents: 6572
diff changeset
  1721
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1722
	if [ "$with_fontconfig" = "1" ] || [ "$with_fontconfig" = "" ] || [ "$with_fontconfig" = "2" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1723
		fontconfig_config="pkg-config fontconfig"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1724
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1725
		fontconfig_config="$with_fontconfig"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1726
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1727
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1728
	version=`$fontconfig_config --modversion 2>/dev/null`
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1729
	ret=$?
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1730
	shortversion=`echo $version | cut -c 1,3`
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1731
	log 2 "executing $fontconfig_config --modversion"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1732
	log 2 "  returned $version"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1733
	log 2 "  exit code $ret"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1734
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1735
	if [ -z "$version" ] || [ "$ret" != "0" ] || [ "$shortversion" -le "22" ]; then
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1736
		if [ -n "$shortversion" ] && [ "$shortversion" -le "22" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1737
			log 1 "checking libfontconfig... needs at least version 2.3.0, fontconfig NOT enabled"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1738
		else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1739
			log 1 "checking libfontconfig... not found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1740
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1741
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1742
		# It was forced, so it should be found.
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1743
		if [ "$with_fontconfig" != "1" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1744
			log 1 "configure: error: fontconfig-config couldn't be found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1745
			log 1 "configure: error: you supplied '$with_fontconfig', but it seems invalid"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1746
			exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1747
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1748
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1749
		fontconfig_config=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1750
		return 0
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1751
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1752
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1753
	log 1 "checking libfontconfig... found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1754
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1755
6209
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1756
detect_pspconfig() {
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1757
	# 0 means no, 1 is auto-detect, 2 is force
6212
39deaa03d180 (svn r8633) [PSP] -Fix r8629: mixed psp-config and pspconfig, making ./configure --reconfig to fail
truelight
parents: 6211
diff changeset
  1758
	if [ "$with_psp_config" = "0" ]; then
6209
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1759
		log 1 "checking psp-config... disabled"
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1760
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1761
		psp_config=""
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1762
		return 0
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1763
	fi
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1764
6212
39deaa03d180 (svn r8633) [PSP] -Fix r8629: mixed psp-config and pspconfig, making ./configure --reconfig to fail
truelight
parents: 6211
diff changeset
  1765
	if [ "$with_psp_config" = "1" ] && [ "$os" != "PSP" ]; then
6209
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1766
		log 1 "checking psp-config... not PSP, skipping"
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1767
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1768
		psp_config="";
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1769
		return 0
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1770
	fi
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1771
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1772
	if [ "$os" != "PSP" ]; then
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1773
		log 1 "checking psp-config... not PSP"
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1774
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1775
		log 1 "configure: error: psp-config is only supported for PSP"
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1776
		exit 1
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1777
	fi
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1778
6212
39deaa03d180 (svn r8633) [PSP] -Fix r8629: mixed psp-config and pspconfig, making ./configure --reconfig to fail
truelight
parents: 6211
diff changeset
  1779
	if [ "$with_psp_config" = "1" ] || [ "$with_psp_config" = "" ] || [ "$with_psp_config" = "2" ]; then
6209
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1780
		psp_config="psp-config"
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1781
	else
6212
39deaa03d180 (svn r8633) [PSP] -Fix r8629: mixed psp-config and pspconfig, making ./configure --reconfig to fail
truelight
parents: 6211
diff changeset
  1782
		psp_config="$with_psp_config"
6209
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1783
	fi
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1784
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1785
	version=`$psp_config -p 2>/dev/null`
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1786
	ret=$?
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1787
	log 2 "executing $psp_config -p"
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1788
	log 2 "  returned $version"
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1789
	log 2 "  exit code $ret"
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1790
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1791
	if [ -z "$version" ] || [ "$ret" != "0" ]; then
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1792
		log 1 "checking psp-config... not found"
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1793
		log 1 "configure: error: psp-config couldn't be found"
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1794
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1795
		# It was forced, so it should be found.
6212
39deaa03d180 (svn r8633) [PSP] -Fix r8629: mixed psp-config and pspconfig, making ./configure --reconfig to fail
truelight
parents: 6211
diff changeset
  1796
		if [ "$with_psp_config" != "1" ]; then
39deaa03d180 (svn r8633) [PSP] -Fix r8629: mixed psp-config and pspconfig, making ./configure --reconfig to fail
truelight
parents: 6211
diff changeset
  1797
			log 1 "configure: error: you supplied '$with_psp_config', but it seems invalid"
6209
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1798
		fi
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1799
		exit 1
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1800
	fi
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1801
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1802
	log 1 "checking psp-config... found"
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1803
}
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1804
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1805
detect_iconv() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1806
	# 0 means no, 1 is auto-detect, 2 is force
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1807
	if [ "$with_iconv" = "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1808
		log 1 "checking iconv... disabled"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1809
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1810
		return 0
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1811
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1812
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1813
	if [ "$with_iconv" = "1" ] && [ "$os" != "OSX" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1814
		log 1 "checking iconv... not OSX, skipping"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1815
		with_iconv="0"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1816
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1817
		return 0
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1818
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1819
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1820
	# Try to find iconv.h, seems to only thing to detect iconv with
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1821
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1822
	if [ "$with_iconv" = "1" ] || [ "$with_iconv" = "" ] || [ "$with_iconv" = "2" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1823
		iconv=`ls -1 /usr/include 2>/dev/null | grep "iconv.h"`
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1824
		if [ -z "$iconv" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1825
			iconv=`ls -1 /usr/local/include 2>/dev/null | grep "iconv.h"`
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1826
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1827
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1828
		# Make sure it exists
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1829
		iconv=`ls $with_iconv/include/iconv.h 2>/dev/null`
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1830
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1831
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1832
	if [ -z "$iconv" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1833
		log 1 "checking iconv... not found"
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1834
		if [ "$with_iconv" = "2" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1835
			log 1 "configure: error: iconv couldn't be found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1836
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1837
			exit 1
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1838
		elif [ "$with_iconv" != "1" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1839
			log 1 "configure: error: iconv couldn't be found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1840
			log 1 "configure: error: you supplied '$with_iconv', but I couldn't detect iconv in it"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1841
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1842
			exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1843
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1844
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1845
		return 0
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1846
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1847
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1848
	if [ "$with_iconv" = "1" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1849
		with_iconv="2"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1850
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1851
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1852
	log 2 "found iconv in $iconv"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1853
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1854
	log 1 "checking iconv... found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1855
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1856
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1857
_detect_sort() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1858
	sort_test_in="d
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1859
a
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1860
c
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1861
b"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1862
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1863
	sort_test_out="a
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1864
b
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1865
c
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1866
d"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1867
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1868
	log 2 "running echo <array> | $1"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1869
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1870
	if [ "`echo \"$sort_test_in\" | $1 2>/dev/null`" = "$sort_test_out" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1871
		sort="$1"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1872
		log 2 "  result was valid"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1873
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1874
		log 2 "  result was invalid"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1875
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1876
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1877
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1878
detect_sort() {
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1879
	if [ "$with_sort" = "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1880
		log 1 "checking sort... disabled"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1881
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1882
		return
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1883
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1884
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1885
	if [ "$with_sort" = "1" ] || [ "$with_sort" = "2" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1886
		_detect_sort "sort"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1887
		if [ -z "$sort" ]; then _detect_sort "/sbin/sort"; fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1888
		if [ -z "$sort" ]; then _detect_sort "/usr/sbin/sort"; fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1889
		if [ -z "$sort" ]; then _detect_sort "/usr/local/sbin/sort"; fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1890
		if [ -z "$sort" ]; then _detect_sort "/bin/sort"; fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1891
		if [ -z "$sort" ]; then _detect_sort "/usr/bin/sort"; fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1892
		if [ -z "$sort" ]; then _detect_sort "/usr/local/bin/sort"; fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1893
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1894
		_detect_sort "$with_sort"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1895
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1896
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1897
	if [ -z "$sort" ]; then
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1898
		if [ "$with_sort" = "2" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1899
			log 1 "checking sort... not found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1900
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1901
			log 1 "configure: error: couldn't detect sort on your system"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1902
			exit 1
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1903
		elif [ "$with_sort" != "1" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1904
			log 1 "checking sort... $with_sort not found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1905
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1906
			log 1 "configure: error: '$with_sort' doesn't look like a sort to me"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1907
			log 1 "configure: error: please verify its location and function and try again"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1908
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1909
			exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1910
		else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1911
			log 1 "checking sort... not found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1912
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1913
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1914
		log 1 "checking sort... $sort"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1915
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1916
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1917
9363
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1918
detect_cputype() {
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1919
	if [ -n "$cpu_type" ] && [ "$cpu_type" != "DETECT" ]; then
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1920
		log 1 "forcing cpu-type... $cpu_type bits"
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1921
		return;
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1922
	fi
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1923
	echo "#include \"src/stdafx.h\"" > tmp.64bit.cpp
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1924
	echo "assert_compile(sizeof(size_t) == 8);" >> tmp.64bit.cpp
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1925
	echo "int main() { return 0; }" >> tmp.64bit.cpp
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1926
	execute="$cxx_host $CFLAGS tmp.64bit.cpp -o tmp.64bit -DTESTING 2>&1"
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1927
	cpu_type="`eval $execute 2>/dev/null`"
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1928
	ret=$?
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1929
	log 2 "executing $execute"
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1930
	log 2 "  returned $cpu_type"
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1931
	log 2 "  exit code $ret"
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1932
	if [ "$ret" = "0" ]; then cpu_type="64"; else cpu_type="32"; fi
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1933
	log 1 "detecting cpu-type... $cpu_type bits"
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1934
	rm -f tmp.64bit tmp.64bit.cpp
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1935
}
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1936
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1937
make_sed() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1938
	# We check here if we are PPC, because then we need to enable FOUR_BYTE_BOOL
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1939
	#  We do this here, and not sooner, so universal builds also have this
5792
81daf7ef579e (svn r7883) It's spelled 'automatically'
tron
parents: 5790
diff changeset
  1940
	#  automatically correct
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1941
	# FOUR_BYTE_BOOL is needed, because C++ uses 4byte for a bool on PPC, where
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1942
	#  we use 1 byte per bool normally in C part. So convert that last one to 4
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1943
	#  bytes too, but only for PPC.
9629
66dde6412125 (svn r10350) [NoAI] -Sync with trunk r10194:10349
glx
parents: 9628
diff changeset
  1944
	ppc=`$cc_host -dumpmachine | egrep "powerpc|ppc"`
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1945
	if [ -n "$ppc" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1946
		T_CFLAGS="$CFLAGS -DFOUR_BYTE_BOOL"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1947
		osx_sysroot_version=10.3.9
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1948
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1949
		T_CFLAGS="$CFLAGS"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1950
		osx_sysroot_version=10.4u
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1951
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1952
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1953
	T_LDFLAGS="$LDFLAGS"
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1954
	if [ "$with_osx_sysroot" = "3" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1955
		T_CFLAGS="$T_CFLAGS -isysroot /Developer/SDKs/MacOSX$osx_sysroot_version.sdk"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1956
		T_LDFLAGS="$T_LDFLAGS -Wl,-syslibroot,/Developer/SDKs/MacOSX$osx_sysroot_version.sdk"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1957
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1958
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1959
	SRC_OBJS_DIR="$BASE_SRC_OBJS_DIR/$OBJS_SUBDIR"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1960
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1961
	# All the data needed to compile a single target
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1962
	#  Make sure if you compile multiple targets to
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1963
	#  use multiple OBJS_DIR, because all in-between
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1964
	#  binaries are stored in there, and nowhere else.
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1965
	SRC_REPLACE="
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1966
		s#!!CC_HOST!!#$cc_host#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1967
		s#!!CXX_HOST!!#$cxx_host#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1968
		s#!!CC_BUILD!!#$cc_build#g;
5838
9c3129cb019b (svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b.
rubidium
parents: 5829
diff changeset
  1969
		s#!!CXX_BUILD!!#$cxx_build#g;
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1970
		s#!!WINDRES!!#$windres#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1971
		s#!!STRIP!!#$strip $strip_arg#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1972
		s#!!LIPO!!#$lipo#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1973
		s#!!CC_CFLAGS!!#$CC_CFLAGS#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1974
		s#!!CFLAGS!!#$T_CFLAGS#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1975
		s#!!CFLAGS_BUILD!!#$CFLAGS_BUILD#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1976
		s#!!STRGEN_FLAGS!!#$strgen_flags#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1977
		s#!!LIBS!!#$LIBS#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1978
		s#!!LDFLAGS!!#$T_LDFLAGS#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1979
		s#!!BIN_DIR!!#$BIN_DIR#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1980
		s#!!ROOT_DIR!!#$ROOT_DIR#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1981
		s#!!MEDIA_DIR!!#$MEDIA_DIR#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1982
		s#!!SOURCE_LIST!!#$SOURCE_LIST#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1983
		s#!!SRC_OBJS_DIR!!#$SRC_OBJS_DIR#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1984
		s#!!LANG_OBJS_DIR!!#$LANG_OBJS_DIR#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1985
		s#!!SRC_DIR!!#$SRC_DIR#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1986
		s#!!OSXAPP!!#$OSXAPP#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1987
		s#!!LANG_DIR!!#$LANG_DIR#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1988
		s#!!TTD!!#$TTD#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1989
		s#!!BINARY_DIR!!#$prefix_dir/$binary_dir#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1990
		s#!!DATA_DIR!!#$prefix_dir/$data_dir#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1991
		s#!!ICON_DIR!!#$prefix_dir/$icon_dir#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1992
		s#!!PERSONAL_DIR!!#$personal_dir#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1993
		s#!!INSTALL_DIR!!#$install_dir#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1994
		s#!!STRGEN!!#$STRGEN#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1995
		s#!!ENDIAN_CHECK!!#$ENDIAN_CHECK#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1996
		s#!!ENDIAN_FORCE!!#$endian#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1997
		s#!!STAGE!!#$STAGE#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1998
		s#!!MAKEDEPEND!!#$makedepend#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1999
		s#!!CFLAGS_MAKEDEP!!#$cflags_makedep#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2000
		s#!!SORT!!#$sort#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2001
		s#!!CONFIG_CACHE_COMPILER!!#config.cache.compiler#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2002
		s#!!CONFIG_CACHE_LINKER!!#config.cache.linker#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2003
		s#!!CONFIG_CACHE_ENDIAN!!#config.cache.endian#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2004
		s#!!CONFIG_CACHE_SOURCE!!#config.cache.source#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2005
		s#!!CONFIG_CACHE_VERSION!!#config.cache.version#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2006
		s#!!CONFIG_CACHE_SOURCE_LIST!!#config.cache.source.list#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2007
		s#!!LANG_SUPPRESS!!#$lang_suppress#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2008
		s#!!OBJS_C!!#$OBJS_C#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2009
		s#!!OBJS_CPP!!#$OBJS_CPP#g;
6192
c6adfc929c6b (svn r8605) -Codechange: [OSX] changed all objective C to objective C++
bjarni
parents: 6174
diff changeset
  2010
		s#!!OBJS_MM!!#$OBJS_MM#g;
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2011
		s#!!OBJS_RC!!#$OBJS_RC#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2012
		s#!!SRCS!!#$SRCS#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2013
		s#!!OS!!#$os#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2014
		s#!!CONFIGURE_FILES!!#$CONFIGURE_FILES#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2015
		s#!!REVISION!!#$revision#g;
6407
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  2016
		s#!!AWK!!#$awk#g;
9601
b499fdd106d5 (svn r9713) [NoAI] -Sync with trunk (r9631:9712).
rubidium
parents: 9569
diff changeset
  2017
		s#!!GCC295!!#$gcc295#g;
9626
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
  2018
		s#!!DISTCC!!#$distcc#g;
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2019
	"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2020
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2021
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2022
generate_main() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2023
	STAGE="[MAIN]"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2024
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2025
	make_sed
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2026
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2027
	# Create the main Makefile
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2028
	echo "Generating Makefile..."
5806
67ed054c6881 (svn r7939) Fix useless use of cat
tron
parents: 5802
diff changeset
  2029
	< $ROOT_DIR/Makefile.in sed "$SRC_REPLACE" > Makefile
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2030
	echo "# Auto-generated file -- DO NOT EDIT" > Makefile.am
5807
0ea696b669ca (svn r7940) Add an empty line instead of overwriting the just written file
tron
parents: 5806
diff changeset
  2031
	echo >> Makefile.am
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2032
	# Make the copy of the source-list, so we don't trigger an unwanted recompile
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2033
	cp $SOURCE_LIST config.cache.source.list
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2034
	# Make sure config.cache is OLDER then config.cache.source.list
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2035
	touch config.cache
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2036
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2037
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2038
generate_lang() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2039
	STAGE="[LANG]"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2040
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2041
	make_sed
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2042
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2043
	# Create the language file
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2044
	mkdir -p $LANG_OBJS_DIR
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2045
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2046
	echo "Generating lang/Makefile..."
5806
67ed054c6881 (svn r7939) Fix useless use of cat
tron
parents: 5802
diff changeset
  2047
	< $ROOT_DIR/Makefile.lang.in sed "$SRC_REPLACE" > $LANG_OBJS_DIR/Makefile
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2048
	echo "DIRS += $LANG_OBJS_DIR" >> Makefile.am
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2049
	echo "LANG_DIRS += $LANG_OBJS_DIR" >> Makefile.am
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2050
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2051
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2052
generate_src_normal() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2053
	STAGE=$1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2054
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2055
	make_sed
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2056
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2057
	# Create the source file
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2058
	mkdir -p $SRC_OBJS_DIR
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2059
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2060
	echo "Generating $2/Makefile..."
5806
67ed054c6881 (svn r7939) Fix useless use of cat
tron
parents: 5802
diff changeset
  2061
	< $ROOT_DIR/Makefile.src.in sed "$SRC_REPLACE" > $SRC_OBJS_DIR/Makefile
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2062
	echo "DIRS += $SRC_OBJS_DIR" >> Makefile.am
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2063
	echo "SRC_DIRS += $SRC_OBJS_DIR" >> Makefile.am
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2064
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2065
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2066
generate_src_osx() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2067
	cc_host_orig="$cc_host"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2068
	cxx_host_orig="$cxx_host"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2069
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2070
	BASE_SRC_OBJS_DIR="$OBJS_DIR/ppc"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2071
	cc_host="$cc_host_orig -arch ppc"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2072
	cxx_host="$cxx_host_orig -arch ppc"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2073
	generate_src_normal "[PowerPC]" "objs/ppc"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2074
5744
ca6dd7a04889 (svn r7777) [Configure] -Fix: call intel builds on OSX universal compiles intel, not i386 (that is just silly)
truelight
parents: 5742
diff changeset
  2075
	BASE_SRC_OBJS_DIR="$OBJS_DIR/intel"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2076
	cc_host="$cc_host_orig -arch i386"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2077
	cxx_host="$cxx_host_orig -arch i386"
5745
b645533af30f (svn r7778) -Fix (r7777): intel -> Intel
truelight
parents: 5744
diff changeset
  2078
	generate_src_normal "[Intel]" "objs/intel"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2079
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2080
	BASE_SRC_OBJS_DIR="$OBJS_DIR/ppc970"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2081
	cc_host="$cc_host_orig -arch ppc970"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2082
	cxx_host="$cxx_host_orig -arch ppc970"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2083
	CFLAGS="$CFLAGS -mtune=970 -mcpu=970 -mpowerpc-gpopt"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2084
	generate_src_normal "[PowerPC G5]" "objs/ppc970"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2085
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2086
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2087
generate_src() {
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  2088
	if [ "$os" = "OSX" ] && [ "$enable_universal" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2089
		generate_src_osx
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2090
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2091
		generate_src_normal "[SRC]" "objs"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2092
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2093
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2094
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2095
showhelp() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2096
	echo "'configure' configures OpenTTD."
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2097
	echo ""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2098
	echo "Usage: $0 [OPTION]... [VAR=VALUE]..."
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2099
	echo ""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2100
	echo "To assign environment variables (e.g., CC, CFLAGS...), specify them as"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2101
	echo "VAR=VALUE.  See below for descriptions of some of the useful variables."
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2102
	echo ""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2103
	echo "Defaults for the options are specified in brackets."
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2104
	echo ""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2105
	echo "Configuration:"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2106
	echo "  -h, --help                     display this help and exit"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2107
	echo ""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2108
	echo "System types:"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2109
	echo "  --build=BUILD                  configure for building on BUILD [guessed]"
5742
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2110
	echo "  --host=HOST                    cross-compile to build programs to run"
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2111
	echo "                                 on HOST [BUILD]"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2112
	echo "  --windres=WINDRES              the windres to use [HOST-windres]"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2113
	echo "  --strip=STRIP                  the strip to use [HOST-strip]"
6407
483c1328a349 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight
parents: 6406
diff changeset
  2114
	echo "  --awk=AWK                      the awk to use in configure [awk]"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2115
	echo "  --lipo=LIPO                    the lipo to use (OSX ONLY) [HOST-lipo]"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2116
	echo "  --os=OS                        the OS we are compiling for [DETECT]"
9624
b71483f2330f (svn r9915) [NoAI] -Sync with trunk -r9815:9914
glx
parents: 9623
diff changeset
  2117
	echo "                                 DETECT/UNIX/OSX/FREEBSD/OPENBSD/MORPHOS/"
b71483f2330f (svn r9915) [NoAI] -Sync with trunk -r9815:9914
glx
parents: 9623
diff changeset
  2118
	echo "                                 BEOS/SUNOS/CYGWIN/MINGW/OS2/WINCE/PSP"
5742
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2119
	echo "  --endian=ENDIAN                set the endian of the HOST (AUTO/LE/BE)"
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2120
	echo "  --revision=rXXXX               overwrite the revision detection."
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2121
	echo "                                 Use with care!"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2122
	echo ""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2123
	echo "Paths:"
5742
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2124
	echo "  --prefix-dir=dir               specifies the prefix for all installed"
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2125
	echo "                                 files [/usr/local]"
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2126
	echo "  --binary-dir=dir               location of the binary. Will be prefixed"
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2127
	echo "                                 with the prefix-dir [games]"
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2128
	echo "  --data-dir=dir                 location of data files (lang, data, gm)."
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2129
	echo "                                 Will be prefixed with the prefix-dir"
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2130
	echo "                                 [share/games/openttd]"
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2131
	echo "  --icon-dir=dir                 location of icons. Will be prefixed"
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2132
	echo "                                 with the prefix-dir [share/pixmaps]"
9628
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
  2133
	echo "  --personal-dir=dir             location of the personal directory [.openttd]"
5742
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2134
	echo "  --install-dir=dir              specifies the root to install to."
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2135
	echo "                                 Useful to install into jails [/]"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2136
	echo ""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2137
	echo "Features and packages:"
5742
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2138
	echo "  --enable-debug[=LVL]           enable debug-mode (LVL=[0123], 0 is release)"
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2139
	echo "  --enable-profiling             enables profiling"
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2140
	echo "  --enable-dedicated             compile a dedicated server (without video)"
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2141
	echo "  --enable-static                enable static compile (doesn't work for"
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2142
	echo "                                 all HOSTs)"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2143
	echo "  --enable-translator            enable extra output for translators"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2144
	echo "  --enable-universal             enable universal builds (OSX ONLY)"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2145
	echo "  --enable-osx-g5                enables optimalizations for G5 (OSX ONLY)"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2146
	echo "  --disable-network              disable network support"
5742
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2147
	echo "  --disable-assert               disable asserts (continue on errors)"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2148
	echo "  --disable-strip                disable any possible stripping"
5742
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2149
	echo "  --without-osx-sysroot          disable the automatic adding of sysroot "
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2150
	echo "                                 (OSX ONLY)"
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2151
	echo "  --without-application-bundle   disable generation of application bundle"
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2152
	echo "                                 (OSX ONLY)"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2153
	echo "  --with-direct-music            enable direct music support (Win32 ONLY)"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2154
	echo "  --with-sort=sort               define a non-default location for sort"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2155
	echo "  --with-midi=midi               define which midi-player to use"
5742
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2156
	echo "  --with-midi-arg=arg            define which args to use for the"
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2157
	echo "                                 midi-player"
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2158
	echo "  --with-cocoa                   enables COCOA video driver (OSX ONLY)"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2159
	echo "  --with-sdl[=sdl-config]        enables SDL video driver support"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2160
	echo "  --with-zlib[=zlib.a]           enables zlib support"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2161
	echo "  --with-png[=libpng-config]     enables libpng support"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2162
	echo "  --with-freetype[=freetype-config]"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2163
	echo "                                 enables libfreetype support"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2164
	echo "  --with-fontconfig[=pkg-config fontconfig]"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2165
	echo "                                 enables fontconfig support"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2166
	echo "  --with-iconv[=iconv-path]      enables iconv support"
6209
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  2167
	echo "  --with-psp-config[=psp-config] enables psp-config support (PSP ONLY)"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2168
	echo "  --with-makedepend[=makedepend] enables makedepend support"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2169
	echo ""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2170
	echo "Some influential environment variables:"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2171
	echo "  CC                             C compiler command"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2172
	echo "  CXX                            C++ compiler command"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2173
	echo "  CFLAGS                         C compiler flags"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2174
	echo "  WINDRES                        windres command"
5742
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2175
	echo "  LDFLAGS                        linker flags, e.g. -L<lib dir> if you"
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2176
	echo "                                 have libraries in a nonstandard"
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2177
	echo "                                 directory <lib dir>"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2178
	echo ""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2179
	echo "Use these variables to override the choices made by 'configure' or to help"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2180
	echo "it to find libraries and programs with nonstandard names/locations."
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2181
}