config.lib
author truelight
Sat, 20 Oct 2007 10:42:28 +0000
branchnoai
changeset 9718 f82a4facea8b
parent 9704 197cb8c6ae17
child 9722 ebf0ece7d8f6
permissions -rw-r--r--
(svn r11309) [NoAI] -Sync: with trunk r11145:11308.
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"
9704
197cb8c6ae17 (svn r11221) [NoAI] -Sync: with trunk r11145:11220
glx
parents: 9703
diff changeset
   705
		elif [ -d "$ROOT_DIR/.hg" ] && [ -n "`hg help`" ]; then
197cb8c6ae17 (svn r11221) [NoAI] -Sync: with trunk r11145:11220
glx
parents: 9703
diff changeset
   706
			revision=""
197cb8c6ae17 (svn r11221) [NoAI] -Sync: with trunk r11145:11220
glx
parents: 9703
diff changeset
   707
			log 1 "checking revision... hg detection"
9626
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   708
		else
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   709
			revision=""
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   710
			log 1 "checking revision... no detection"
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   711
			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
   712
			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
   713
			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
   714
			log 1 "WARNING: have been compiled without version detection."
855e32c08c9b (svn r10533) [NoAI] -Sync with trunk r10460:r10532.
truelight
parents: 9629
diff changeset
   715
			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
   716
			log 1 "WARNING: USE WITH CAUTION!"
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   717
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   718
			sleep 5
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   719
		fi
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
   720
	fi
9628
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   721
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   722
	if [ "$personal_dir" = "1" ]; then
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   723
		if [ "$os" = "MINGW" ] || [ "$os" = "CYGWIN" ] || [ "$os" = "WINCE" ]; then
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   724
			personal_dir="OpenTTD"
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   725
		elif [ "$os" = "OSX" ]; then
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   726
			personal_dir="Documents/OpenTTD"
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   727
		else
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   728
			personal_dir=".openttd"
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   729
		fi
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   730
	fi
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   731
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   732
	if [ -n "$personal_dir" ]
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   733
	then
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   734
		log 1 "personal home directory... $personal_dir"
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   735
	else
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   736
		log 1 "personal home directory... none"
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   737
	fi
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   738
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   739
	if [ -n "$install_dir" ]
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   740
	then
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   741
		log 1 "installation directory... $install_dir"
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   742
	else
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   743
		log 1 "installation directory... none"
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
   744
	fi
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   745
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   746
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   747
make_cflags_and_ldflags() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   748
	# General CFlags for BUILD
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   749
	CFLAGS_BUILD=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   750
	# General CFlags for HOST
9703
d2a6acdbd665 (svn r11146) [NoAI] -Sync: with trunk r11035:11045.
rubidium
parents: 9701
diff changeset
   751
	CFLAGS="$CFLAGS -D$os"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   752
	# CFlags for HOST and C-Compiler
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   753
	CC_FLAGS=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   754
	# Libs to compile. In fact this is just LDFLAGS
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   755
	LIBS="-lstdc++"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   756
	# LDFLAGS used for HOST
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   757
	LDFLAGS="$LDFLAGS"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   758
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   759
	if [ $enable_debug = 0 ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   760
		# 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
   761
		OBJS_SUBDIR="release"
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   762
		if [ "$os" = "OSX" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   763
			# 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
   764
			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
   765
		else
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   766
			if [ "$os" = "MORPHOS" ]; then
9641
855e32c08c9b (svn r10533) [NoAI] -Sync with trunk r10460:r10532.
truelight
parents: 9629
diff changeset
   767
				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
   768
				LDFLAGS="$LDFLAGS -noixemul"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   769
			fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   770
9641
855e32c08c9b (svn r10533) [NoAI] -Sync with trunk r10460:r10532.
truelight
parents: 9629
diff changeset
   771
			CFLAGS="-O2 -fomit-frame-pointer $CFLAGS"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   772
		fi
5802
6f6dee32edd1 (svn r7931) -Fix (r7759): multiple (different) -O flags made compilations with the wrong optimisations.
rubidium
parents: 5800
diff changeset
   773
	else
6f6dee32edd1 (svn r7931) -Fix (r7759): multiple (different) -O flags made compilations with the wrong optimisations.
rubidium
parents: 5800
diff changeset
   774
		OBJS_SUBDIR="debug"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   775
5802
6f6dee32edd1 (svn r7931) -Fix (r7759): multiple (different) -O flags made compilations with the wrong optimisations.
rubidium
parents: 5800
diff changeset
   776
		# 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
   777
		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
   778
			CFLAGS="$CFLAGS -g -D_DEBUG"
6230
06c91ff0af27 (svn r8678) [PSP] -Add: added LIBS and CFLAGS needed to compile PSP
truelight
parents: 6212
diff changeset
   779
			if [ "$os" = "PSP" ]; then
06c91ff0af27 (svn r8678) [PSP] -Add: added LIBS and CFLAGS needed to compile PSP
truelight
parents: 6212
diff changeset
   780
				CFLAGS="$CFLAGS -G0"
06c91ff0af27 (svn r8678) [PSP] -Add: added LIBS and CFLAGS needed to compile PSP
truelight
parents: 6212
diff changeset
   781
			fi
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 2 ]; 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 -fno-inline"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   785
		fi
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   786
		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
   787
			CFLAGS="$CFLAGS -O0"
6f6dee32edd1 (svn r7931) -Fix (r7759): multiple (different) -O flags made compilations with the wrong optimisations.
rubidium
parents: 5800
diff changeset
   788
		else
6f6dee32edd1 (svn r7931) -Fix (r7759): multiple (different) -O flags made compilations with the wrong optimisations.
rubidium
parents: 5800
diff changeset
   789
			CFLAGS="$CFLAGS -O2"
6f6dee32edd1 (svn r7931) -Fix (r7759): multiple (different) -O flags made compilations with the wrong optimisations.
rubidium
parents: 5800
diff changeset
   790
		fi
6f6dee32edd1 (svn r7931) -Fix (r7759): multiple (different) -O flags made compilations with the wrong optimisations.
rubidium
parents: 5800
diff changeset
   791
	fi
6f6dee32edd1 (svn r7931) -Fix (r7759): multiple (different) -O flags made compilations with the wrong optimisations.
rubidium
parents: 5800
diff changeset
   792
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   793
	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
   794
		CFLAGS="$CFLAGS -p"
6f6dee32edd1 (svn r7931) -Fix (r7759): multiple (different) -O flags made compilations with the wrong optimisations.
rubidium
parents: 5800
diff changeset
   795
		LDFLAGS="$LDFLAGS -pg"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   796
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   797
9623
ee0173281563 (svn r9826) [NoAI] -Fix r9821: in bash '==' is disliked, use '='
truelight
parents: 9621
diff changeset
   798
	if [ "$with_threads" = "0" ]; then
9621
7654501cf02d (svn r9821) [NoAI] -Fix: support compilation without threads.
rubidium
parents: 9601
diff changeset
   799
		CFLAGS="$CFLAGS -DNO_THREADS"
7654501cf02d (svn r9821) [NoAI] -Fix: support compilation without threads.
rubidium
parents: 9601
diff changeset
   800
	fi
7654501cf02d (svn r9821) [NoAI] -Fix: support compilation without threads.
rubidium
parents: 9601
diff changeset
   801
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   802
	# Enable some things only for certain GCC versions
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   803
	cc_version=`$cc_host -dumpversion | cut -c 1,3`
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   804
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   805
	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
   806
		CFLAGS="$CFLAGS -Wall -Wno-multichar -Wsign-compare -Wundef"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   807
		CFLAGS="$CFLAGS -Wwrite-strings -Wpointer-arith"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   808
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   809
		CC_CFLAGS="$CC_CFLAGS -Wstrict-prototypes"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   810
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   811
9601
b499fdd106d5 (svn r9713) [NoAI] -Sync with trunk (r9631:9712).
rubidium
parents: 9569
diff changeset
   812
	gcc295=""
b499fdd106d5 (svn r9713) [NoAI] -Sync with trunk (r9631:9712).
rubidium
parents: 9569
diff changeset
   813
	if [ "$cc_version" = 29 ]; then
b499fdd106d5 (svn r9713) [NoAI] -Sync with trunk (r9631:9712).
rubidium
parents: 9569
diff changeset
   814
		# 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
   815
		#  need a lovely hack there to make it compile correctly.
b499fdd106d5 (svn r9713) [NoAI] -Sync with trunk (r9631:9712).
rubidium
parents: 9569
diff changeset
   816
		gcc295="1"
b499fdd106d5 (svn r9713) [NoAI] -Sync with trunk (r9631:9712).
rubidium
parents: 9569
diff changeset
   817
	fi
b499fdd106d5 (svn r9713) [NoAI] -Sync with trunk (r9631:9712).
rubidium
parents: 9569
diff changeset
   818
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   819
	if [ $cc_version -ge 30 ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   820
		CFLAGS="$CFLAGS -W -Wno-unused-parameter"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   821
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   822
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   823
	if [ $cc_version -ge 34 ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   824
		CC_CFLAGS="$CC_CFLAGS -Wdeclaration-after-statement -Wold-style-definition"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   825
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   826
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   827
	if [ "$os" = "CYGWIN" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   828
		CFLAGS="$CFLAGS -mwin32"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   829
		LDFLAGS="$LDFLAGS -mwin32"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   830
	fi
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   831
	if [ "$os" = "MINGW" ] || [ "$os" = "CYGWIN" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   832
		CFLAGS="$CFLAGS -mno-cygwin"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   833
		LDFLAGS="$LDFLAGS -mno-cygwin"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   834
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   835
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   836
	if [ "$os" = "CYGWIN" ] || [ "$os" = "MINGW" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   837
		LDFLAGS="$LDFLAGS -Wl,--subsystem,windows"
9506
b7807b6a85a1 (svn r9397) [NoAI] -Fix r9396: one file was wrong
glx
parents: 9505
diff changeset
   838
		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
   839
	fi
761e7675f6f2 (svn r9513) [NoAI] -Fix: disable strict-aliasing to make GCC 4 stop bitching about it
truelight
parents: 9506
diff changeset
   840
761e7675f6f2 (svn r9513) [NoAI] -Fix: disable strict-aliasing to make GCC 4 stop bitching about it
truelight
parents: 9506
diff changeset
   841
	# 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
   842
	#  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
   843
	#  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
   844
	#  compiler all happy.
761e7675f6f2 (svn r9513) [NoAI] -Fix: disable strict-aliasing to make GCC 4 stop bitching about it
truelight
parents: 9506
diff changeset
   845
	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
   846
		CFLAGS="$CFLAGS -fno-strict-aliasing"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   847
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   848
9701
d1ac22c62f64 (svn r11036) [NoAI] -Sync: with trunk r10774:11035.
rubidium
parents: 9694
diff changeset
   849
	# GCC 4.2+ automatically assumes that signed overflows do
d1ac22c62f64 (svn r11036) [NoAI] -Sync: with trunk r10774:11035.
rubidium
parents: 9694
diff changeset
   850
	# not occur in signed arithmetics, whereas we are not
d1ac22c62f64 (svn r11036) [NoAI] -Sync: with trunk r10774:11035.
rubidium
parents: 9694
diff changeset
   851
	# sure that they will not happen. It furthermore complains
d1ac22c62f64 (svn r11036) [NoAI] -Sync: with trunk r10774:11035.
rubidium
parents: 9694
diff changeset
   852
	# about it's own optimized code in some places.
d1ac22c62f64 (svn r11036) [NoAI] -Sync: with trunk r10774:11035.
rubidium
parents: 9694
diff changeset
   853
	if [ $cc_version -ge 42 ]; then
d1ac22c62f64 (svn r11036) [NoAI] -Sync: with trunk r10774:11035.
rubidium
parents: 9694
diff changeset
   854
		CFLAGS="$CFLAGS -fno-strict-overflow"
d1ac22c62f64 (svn r11036) [NoAI] -Sync: with trunk r10774:11035.
rubidium
parents: 9694
diff changeset
   855
	fi
d1ac22c62f64 (svn r11036) [NoAI] -Sync: with trunk r10774:11035.
rubidium
parents: 9694
diff changeset
   856
9629
66dde6412125 (svn r10350) [NoAI] -Sync with trunk r10194:10349
glx
parents: 9628
diff changeset
   857
	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
   858
		LIBS="$LIBS -lpthread"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   859
		LIBS="$LIBS -lrt"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   860
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   861
6004
03795fd01cb8 (svn r8304) [WinCE] -Add: added configure detection for WinCE.
truelight
parents: 5838
diff changeset
   862
	if [ "$os" != "CYGWIN" ] && [ "$os" != "MINGW" ] && [ "$os" != "WINCE" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   863
		LIBS="$LIBS -lc"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   864
	fi
6004
03795fd01cb8 (svn r8304) [WinCE] -Add: added configure detection for WinCE.
truelight
parents: 5838
diff changeset
   865
	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
   866
		LIBS="$LIBS -lcoredll -lcorelibc -laygshell -lws2 -e WinMainCRTStartup"
6004
03795fd01cb8 (svn r8304) [WinCE] -Add: added configure detection for WinCE.
truelight
parents: 5838
diff changeset
   867
	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
   868
	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
   869
		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
   870
		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
   871
06c91ff0af27 (svn r8678) [PSP] -Add: added LIBS and CFLAGS needed to compile PSP
truelight
parents: 6212
diff changeset
   872
		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
   873
		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
   874
	fi
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   875
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   876
	if [ "$os" = "MORPHOS" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   877
		# -Wstrict-prototypes generates much noise because of system headers
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   878
		CFLAGS="$CFLAGS -Wno-strict-prototypes"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   879
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   880
9624
b71483f2330f (svn r9915) [NoAI] -Sync with trunk -r9815:9914
glx
parents: 9623
diff changeset
   881
	if [ "$os" = "OPENBSD" ]; then
b71483f2330f (svn r9915) [NoAI] -Sync with trunk -r9815:9914
glx
parents: 9623
diff changeset
   882
		LIBS="$LIBS -pthread"
b71483f2330f (svn r9915) [NoAI] -Sync with trunk -r9815:9914
glx
parents: 9623
diff changeset
   883
	fi
b71483f2330f (svn r9915) [NoAI] -Sync with trunk -r9815:9914
glx
parents: 9623
diff changeset
   884
9718
f82a4facea8b (svn r11309) [NoAI] -Sync: with trunk r11145:11308.
truelight
parents: 9704
diff changeset
   885
	if [ "$os" = "FREEBSD" ]; then
f82a4facea8b (svn r11309) [NoAI] -Sync: with trunk r11145:11308.
truelight
parents: 9704
diff changeset
   886
		LIBS="$LIBS -lpthread"
f82a4facea8b (svn r11309) [NoAI] -Sync: with trunk r11145:11308.
truelight
parents: 9704
diff changeset
   887
	fi
f82a4facea8b (svn r11309) [NoAI] -Sync: with trunk r11145:11308.
truelight
parents: 9704
diff changeset
   888
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   889
	if [ "$os" = "OSX" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   890
		LDFLAGS="$LDFLAGS -framework Cocoa"
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   891
		if [ "$enable_dedicated" = "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   892
			LIBS="$LIBS -framework QuickTime"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   893
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   894
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   895
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   896
	if [ "$os" = "BEOS" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   897
		LIBS="$LIBS -lmidi -lbe"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   898
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   899
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   900
	# Most targets act like UNIX, just with some additions
9624
b71483f2330f (svn r9915) [NoAI] -Sync with trunk -r9815:9914
glx
parents: 9623
diff changeset
   901
	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
   902
		CFLAGS="$CFLAGS -DUNIX"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   903
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   904
	# And others like Windows
6004
03795fd01cb8 (svn r8304) [WinCE] -Add: added configure detection for WinCE.
truelight
parents: 5838
diff changeset
   905
	if [ "$os" = "MINGW" ] || [ "$os" = "CYGWIN" ] || [ "$os" = "WINCE" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   906
		CFLAGS="$CFLAGS -DWIN"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   907
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   908
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   909
	if [ -n "$sdl_config" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   910
		CFLAGS="$CFLAGS -DWITH_SDL"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   911
		CFLAGS="$CFLAGS `$sdl_config --cflags`"
6575
ce92be4d7a8d (svn r9053) -Change [Config]: removed unneeded stuff for windows
glx
parents: 6572
diff changeset
   912
		if [ "$os" != "MINGW" ] && [ "$os" != "CYGWIN" ] && [ "$os" != "WINCE" ]; then
ce92be4d7a8d (svn r9053) -Change [Config]: removed unneeded stuff for windows
glx
parents: 6572
diff changeset
   913
			if [ "$enable_static" != "0" ]; then
ce92be4d7a8d (svn r9053) -Change [Config]: removed unneeded stuff for windows
glx
parents: 6572
diff changeset
   914
				LIBS="$LIBS `$sdl_config --static-libs`"
ce92be4d7a8d (svn r9053) -Change [Config]: removed unneeded stuff for windows
glx
parents: 6572
diff changeset
   915
			else
ce92be4d7a8d (svn r9053) -Change [Config]: removed unneeded stuff for windows
glx
parents: 6572
diff changeset
   916
				LIBS="$LIBS `$sdl_config --libs`"
ce92be4d7a8d (svn r9053) -Change [Config]: removed unneeded stuff for windows
glx
parents: 6572
diff changeset
   917
			fi
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   918
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   919
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   920
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   921
	if [ "$with_cocoa" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   922
		CFLAGS="$CFLAGS -DWITH_COCOA"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   923
		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
   924
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   925
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   926
	if [ "$with_zlib" != "0" ]; then
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   927
		if [ "$enable_static" != "0" ] && [ "$os" != "OSX" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   928
			LIBS="$LIBS $zlib"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   929
		else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   930
			LIBS="$LIBS -lz"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   931
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   932
		CFLAGS="$CFLAGS -DWITH_ZLIB"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   933
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   934
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
   935
	# 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
   936
	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
   937
		CFLAGS="$CFLAGS -D_SQ64"
9363
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
   938
	fi
9423
6303307e17f1 (svn r9224) [NoAI] -Change: move squirrel source to our src/ tree
truelight
parents: 9419
diff changeset
   939
	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
   940
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   941
	if [ -n "$png_config" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   942
		CFLAGS="$CFLAGS -DWITH_PNG"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   943
		CFLAGS="$CFLAGS `$png_config --cppflags --I_opts | tr '\n\r' '  '`"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   944
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   945
		# 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
   946
		if [ "$enable_static" != "0" ]; then
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   947
			if [ "$os" = "OSX" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   948
				LIBS="$LIBS `$png_config --prefix`/lib/libpng.a"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   949
			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
   950
				LIBS="$LIBS `$png_config --static --ldflags | tr '\n\r' '  '`"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   951
			fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   952
		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
   953
			LIBS="$LIBS `$png_config --ldflags | tr '\n\r' '  '`"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   954
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   955
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   956
6567
aa762c70a663 (svn r9044) -Fix [Config]: add fontconfig before freetype, as in static order is important
truelight
parents: 6564
diff changeset
   957
	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
   958
		CFLAGS="$CFLAGS -DWITH_FONTCONFIG"
aa762c70a663 (svn r9044) -Fix [Config]: add fontconfig before freetype, as in static order is important
truelight
parents: 6564
diff changeset
   959
		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
   960
aa762c70a663 (svn r9044) -Fix [Config]: add fontconfig before freetype, as in static order is important
truelight
parents: 6564
diff changeset
   961
		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
   962
			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
   963
				# 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
   964
				# 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
   965
				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
   966
			else
aa762c70a663 (svn r9044) -Fix [Config]: add fontconfig before freetype, as in static order is important
truelight
parents: 6564
diff changeset
   967
				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
   968
			fi
aa762c70a663 (svn r9044) -Fix [Config]: add fontconfig before freetype, as in static order is important
truelight
parents: 6564
diff changeset
   969
		else
aa762c70a663 (svn r9044) -Fix [Config]: add fontconfig before freetype, as in static order is important
truelight
parents: 6564
diff changeset
   970
			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
   971
		fi
aa762c70a663 (svn r9044) -Fix [Config]: add fontconfig before freetype, as in static order is important
truelight
parents: 6564
diff changeset
   972
	fi
aa762c70a663 (svn r9044) -Fix [Config]: add fontconfig before freetype, as in static order is important
truelight
parents: 6564
diff changeset
   973
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   974
	if [ -n "$freetype_config" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   975
		CFLAGS="$CFLAGS -DWITH_FREETYPE"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   976
		CFLAGS="$CFLAGS `$freetype_config --cflags | tr '\n\r' '  '`"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   977
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   978
		if [ "$enable_static" != "0" ]; then
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   979
			if [ "$os" = "OSX" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   980
				LIBS="$LIBS `$freetype_config --prefix`/lib/libfreetype.a"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   981
			else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   982
				# Is it possible to do static with freetype, if so: how?
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   983
				LIBS="$LIBS `$freetype_config --libs | tr '\n\r' '  '`"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   984
			fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   985
		else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   986
			LIBS="$LIBS `$freetype_config --libs | tr '\n\r' '  '`"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   987
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   988
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   989
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
   990
	if [ "$with_direct_music" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   991
		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
   992
		# 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
   993
		#  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
   994
		#  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
   995
		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
   996
			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
   997
		fi
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   998
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
   999
6361
8fc35d15114f (svn r8758) -Fix r8757: wrong variable to check libtimidity on if it is found or not
truelight
parents: 6360
diff changeset
  1000
	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
  1001
		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
  1002
			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
  1003
		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
  1004
			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
  1005
		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
  1006
		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
  1007
	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
  1008
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1009
	if [ "$with_iconv" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1010
		CFLAGS="$CFLAGS -DWITH_ICONV"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1011
		LIBS="$LIBS -liconv"
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1012
		if [ "$with_iconv" != "2" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1013
			CFLAGS="$CFLAGS -I$with_iconv/include"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1014
			LIBS="$LIBS -L$with_iconv/lib"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1015
		fi
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 [ -n "$with_midi" ]; then
5800
302fcf9afa49 (svn r7922) -Fix: bad escaping in CFLAGS
glx
parents: 5792
diff changeset
  1019
		CFLAGS="$CFLAGS -DEXTERNAL_PLAYER=\\\\\"$with_midi\\\\\""
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1020
	fi
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1021
	if [ -n "$with_midi_arg" ]; then
5800
302fcf9afa49 (svn r7922) -Fix: bad escaping in CFLAGS
glx
parents: 5792
diff changeset
  1022
		CFLAGS="$CFLAGS -DMIDI_ARG=\\\\\"$with_midi_arg\\\\\""
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1023
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1024
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1025
	if [ "$enable_dedicated" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1026
		CFLAGS="$CFLAGS -DDEDICATED"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1027
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1028
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
  1029
	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
  1030
		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
  1031
	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
  1032
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1033
	if [ "$enable_network" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1034
		CFLAGS="$CFLAGS -DENABLE_NETWORK"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1035
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1036
		if [ "$os" = "BEOS" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1037
			LDFLAGS="$LDFLAGS -lbind -lsocket"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1038
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1039
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1040
		if [ "$os" = "SUNOS" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1041
			LDFLAGS="$LDFLAGS -lnsl -lsocket"
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_static" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1046
		# OSX can't handle -static in LDFLAGS
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1047
		if [ "$os" != "OSX" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1048
			LDFLAGS="$LDFLAGS -static"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1049
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1050
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1051
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1052
	if [ "$enable_assert" = "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1053
		CFLAGS="$CFLAGS -DNDEBUG"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1054
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1055
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1056
	if [ "$enable_osx_g5" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1057
		CFLAGS="$CFLAGS -mtune=970 -mcpu=970 -mpowerpc-gpopt"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1058
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1059
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1060
	if [ "$with_osx_sysroot" != "0" ] && [ "$with_osx_sysroot" != "3" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1061
		CFLAGS="$CFLAGS -isysroot /Developer/SDKs/MacOSX$with_osx_sysroot.sdk"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1062
		LDFLAGS="$LDFLAGS -Wl,-syslibroot,/Developer/SDKs/MacOSX$with_osx_sysroot.sdk"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1063
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1064
9628
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
  1065
	if [ -n "$personal_dir" ]; then
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
  1066
		CFLAGS="$CFLAGS -DWITH_PERSONAL_DIR -DPERSONAL_DIR=\\\\\"$personal_dir\\\\\""
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1067
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1068
9628
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
  1069
	CFLAGS="$CFLAGS -DGLOBAL_DATA_DIR=\\\\\"$prefix_dir/$data_dir\\\\\""
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1070
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1071
	log 1 "using CFLAGS... $CFLAGS $CC_CFLAGS"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1072
	log 1 "using LDFLAGS... $LIBS $LDFLAGS"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1073
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1074
	# Makedepend doesn't like something like: -isysroot /OSX/blabla
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1075
	#  so convert it to: -isysroot -OSX/blabla. makedepend just ignores
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1076
	#  any - command it doesn't know, so we are pretty save.
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1077
	# Lovely hackish, not?
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1078
	# 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
  1079
	#  not something we can control.
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1080
	if [ "$with_makedepend" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1081
		cflags_makedep="` echo "$CFLAGS" | sed 's# /# -#g'`"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1082
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1083
		makedepend=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1084
	fi
9626
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
  1085
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
  1086
	if [ "$with_distcc" != "0" ]; then
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
  1087
		cc_host="$distcc $cc_host"
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
  1088
		cxx_host="$distcc $cxx_host"
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
  1089
		log 1 ""
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
  1090
		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
  1091
		log 1 ""
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
  1092
	fi
9628
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
  1093
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
  1094
	if [ "$with_ccache" != "0" ]; then
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
  1095
		cc_host="$ccache $cc_host"
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
  1096
		cxx_host="$ccache $cxx_host"
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
  1097
	fi
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1098
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1099
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1100
check_compiler() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1101
	# Params:
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1102
	# $1 - Type for message (build / host)
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1103
	# $2 - What to fill with the found compiler
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1104
	# $3 - System to try
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1105
	# $4 - Compiler to try
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1106
	# $5 - Env-setting to try
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1107
	# $6 - GCC alike to try
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1108
	# $7 - CC alike to try
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1109
	# $8 - "0" gcc, "1" g++, "2" windres, "3" strip, "4" lipo
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1110
	# $9 - What the command is to check for
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1111
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1112
	if [ -n "$3" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1113
		# Check for system
6232
09125a3ceba4 (svn r8680) [Configure] -Codechange: allow a bit more flexible code in check_compiler
truelight
parents: 6231
diff changeset
  1114
		if [ -z "$6" ]; then
09125a3ceba4 (svn r8680) [Configure] -Codechange: allow a bit more flexible code in check_compiler
truelight
parents: 6231
diff changeset
  1115
			compiler="$3"
09125a3ceba4 (svn r8680) [Configure] -Codechange: allow a bit more flexible code in check_compiler
truelight
parents: 6231
diff changeset
  1116
		else
09125a3ceba4 (svn r8680) [Configure] -Codechange: allow a bit more flexible code in check_compiler
truelight
parents: 6231
diff changeset
  1117
			compiler="$3-$6"
09125a3ceba4 (svn r8680) [Configure] -Codechange: allow a bit more flexible code in check_compiler
truelight
parents: 6231
diff changeset
  1118
		fi
09125a3ceba4 (svn r8680) [Configure] -Codechange: allow a bit more flexible code in check_compiler
truelight
parents: 6231
diff changeset
  1119
		machine=`eval $compiler $9 2>/dev/null`
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1120
		ret=$?
6232
09125a3ceba4 (svn r8680) [Configure] -Codechange: allow a bit more flexible code in check_compiler
truelight
parents: 6231
diff changeset
  1121
		eval "$2=$compiler"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1122
6232
09125a3ceba4 (svn r8680) [Configure] -Codechange: allow a bit more flexible code in check_compiler
truelight
parents: 6231
diff changeset
  1123
		log 2 "executing $compiler $9"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1124
		log 2 "  returned $machine"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1125
		log 2 "  exit code $ret"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1126
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1127
		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
  1128
			log 1 "checking $1... $compiler not found"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1129
			log 1 "I couldn't detect any $6 binary for $3"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1130
			exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1131
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1132
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1133
		if [ "$machine" != "$3" ] && ( [ "$8" = "0" ] || [ "$8" = "1" ] ); then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1134
			log 1 "checking $1... expected $3, found $machine"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1135
			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
  1136
			exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1137
		fi
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1138
	elif [ -n "$4" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1139
		# Check for manual compiler
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1140
		machine=`$4 $9 2>/dev/null`
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1141
		ret=$?
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1142
		eval "$2=$4"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1143
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1144
		log 2 "executing $4 $9"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1145
		log 2 "  returned $machine"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1146
		log 2 "  exit code $ret"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1147
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1148
		if ( [ -z "$machine" ] && [ "$8" != "3" ] ) || [ "$ret" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1149
			log 1 "checking $1... $4 not found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1150
			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
  1151
			exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1152
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1153
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1154
		# Nothing given, autodetect
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1155
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1156
		if [ -n "$5" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1157
			machine=`$5 $9 2>/dev/null`
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1158
			ret=$?
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1159
			eval "$2=$5"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1160
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1161
			log 2 "executing $5 $9"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1162
			log 2 "  returned $machine"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1163
			log 2 "  exit code $ret"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1164
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1165
			# 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
  1166
			if ( [ -z "$machine" ] && [ "$8" != "3" ] ) || [ "$ret" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1167
				log 1 "checking $1... $5 unusable"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1168
				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
  1169
				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
  1170
				exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1171
			fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1172
		else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1173
			log 2 "checking $1... CC/CXX not set (skipping)"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1174
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1175
			# No $5, so try '$6'
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1176
			machine=`$6 $9 2>/dev/null`
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1177
			ret=$?
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1178
			eval "$2=$6"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1179
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1180
			log 2 "executing $6 $9"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1181
			log 2 "  returned $machine"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1182
			log 2 "  exit code $ret"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1183
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1184
			if ( [ -z "$machine" ] && [ "$8" != "3" ] ) || [ "$ret" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1185
				# Maybe '$7'?
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1186
				machine=`$7 $9 2>/dev/null`
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1187
				ret=$?
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1188
				eval "$2=$7"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1189
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1190
				log 2 "executing $7 $9"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1191
				log 2 "  returned $machine"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1192
				log 2 "  exit code $ret"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1193
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1194
				# All failed, abort
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1195
				if [ -z "$machine" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1196
					log 1 "checking $1... $6 not found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1197
					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
  1198
					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
  1199
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1200
					exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1201
				fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1202
			fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1203
		fi
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
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1206
	if [ "$8" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1207
		eval "res=\$$2"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1208
		log 1 "checking $1... $res"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1209
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1210
		log 1 "checking $1... $machine"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1211
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1212
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1213
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1214
check_build() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1215
	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
  1216
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1217
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1218
check_host() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1219
	# By default the host is the build
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1220
	if [ -z "$host" ]; then host="$build"; fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1221
	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
  1222
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1223
5838
9c3129cb019b (svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b.
rubidium
parents: 5829
diff changeset
  1224
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
  1225
	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
  1226
}
9c3129cb019b (svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b.
rubidium
parents: 5829
diff changeset
  1227
9c3129cb019b (svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b.
rubidium
parents: 5829
diff changeset
  1228
check_cxx_host() {
9c3129cb019b (svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b.
rubidium
parents: 5829
diff changeset
  1229
	# 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
  1230
	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
  1231
	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
  1232
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1233
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1234
check_windres() {
6004
03795fd01cb8 (svn r8304) [WinCE] -Add: added configure detection for WinCE.
truelight
parents: 5838
diff changeset
  1235
	if [ "$os" = "MINGW" ] || [ "$os" = "CYGWIN" ] || [ "$os" = "WINCE" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1236
		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
  1237
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1238
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1239
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1240
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
  1241
	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
  1242
		# 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
  1243
		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
  1244
	elif [ "$os" = "OSX" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1245
		# 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
  1246
		echo "int main(int argc, char *argv[]) { }" > strip.test.c
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1247
		$cc_host strip.test.c -o strip.test
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1248
		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
  1249
		rm -f strip.test.c strip.test
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1250
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1251
		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
  1252
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1253
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1254
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1255
check_lipo() {
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1256
	if [ "$os" = "OSX" ] && [ "$enable_universal" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1257
		echo "int main(int argc, char *argv[]) { }" > lipo.test.c
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1258
		$cc_host lipo.test.c -o lipo.test
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1259
		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
  1260
		rm -f lipo.test.c lipo.test
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1261
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1262
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1263
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1264
check_direct_music() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1265
	echo "
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1266
		#include <windows.h>
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1267
		#include <dmksctrl.h>
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1268
		#include <dmusici.h>
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1269
		#include <dmusicc.h>
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1270
		#include <dmusicf.h>
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1271
		int main(int argc, char *argv[]) { }" > direct_music.test.c
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1272
	$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
  1273
	res=$?
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1274
	rm -f direct_music.test.c direct_music.test
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1275
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1276
	if [ "$res" != "0" ]; then
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1277
		if [ "$with_direct_music" = "2" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1278
			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
  1279
			exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1280
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1281
		with_direct_music="0"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1282
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1283
		log 1 "checking direct-music... not found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1284
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1285
		log 1 "checking direct-music... found"
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
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1288
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1289
check_makedepend() {
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1290
	if [ "$with_makedepend" = "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1291
		log 1 "checking makedepend... disabled"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1292
		return
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1293
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1294
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1295
	if [ "$with_makedepend" = "1" ] || [ "$with_makedepend" = "2" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1296
		makedepend="makedepend"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1297
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1298
		makedepend="$with_makedepend"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1299
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1300
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1301
	rm -f makedepend.tmp
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1302
	touch makedepend.tmp
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1303
	res=`$makedepend -fmakedepend.tmp 2>/dev/null`
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1304
	res=$?
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1305
	log 2 "executing $makedepend -f makedepend.tmp"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1306
	log 2 "  returned `cat makedepend.tmp`"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1307
	log 2 "  exit code $ret"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1308
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1309
	if [ ! -s makedepend.tmp ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1310
		rm -f makedepend.tmp makedepend.tmp.bak
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1311
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1312
		if [ "$with_makedepend" = "2" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1313
			log 1 "checking 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 "I couldn't detect any makedepend on your system"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1316
			log 1 "please locate it via --makedepend=[binary]"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1317
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1318
			exit 1
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1319
		elif [ "$with_makedepend" != "1" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1320
			log 1 "checking makedepend... $makedepend not found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1321
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1322
			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
  1323
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1324
			exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1325
		else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1326
			log 1 "checking makedepend... not found"
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
			with_makedepend="0"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1329
			return
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1330
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1331
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1332
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1333
	rm -f makedepend.tmp makedepend.tmp.bak
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1334
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1335
	log 1 "checking makedepend... $makedepend"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1336
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1337
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
  1338
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
  1339
	# 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
  1340
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
	# 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
  1342
	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
  1343
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
	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
  1345
	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
  1346
	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
  1347
	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
  1348
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
	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
  1350
	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
  1351
	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
  1352
	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
  1353
		# 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
  1354
		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
  1355
			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
  1356
			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
  1357
			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
  1358
			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
  1359
		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
  1360
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: 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
  1364
			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
  1365
			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
  1366
		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
  1367
	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
  1368
	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
  1369
		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
  1370
		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
  1371
		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
  1372
	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
  1373
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
  1374
	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
  1375
}
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
  1376
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1377
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
  1378
	if [ "$os" = "DETECT" ]; then
9624
b71483f2330f (svn r9915) [NoAI] -Sync with trunk -r9815:9914
glx
parents: 9623
diff changeset
  1379
		# 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
  1380
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1381
		# 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
  1382
		os=`echo "$host" | tr '[A-Z]' '[a-z]' | $awk '
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1383
					/linux/        { print "UNIX";    exit}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1384
					/darwin/       { print "OSX";     exit}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1385
					/freebsd/      { print "FREEBSD"; exit}
9624
b71483f2330f (svn r9915) [NoAI] -Sync with trunk -r9815:9914
glx
parents: 9623
diff changeset
  1386
					/openbsd/      { print "OPENBSD"; exit}
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1387
					/morphos/      { print "MORPHOS"; exit}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1388
					/beos/         { print "BEOS";    exit}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1389
					/sunos/        { print "SUNOS";   exit}
6546
d420506b08d8 (svn r9017) [Config] -Fix: if 'solaris' is in gcc dumpmachine, we have SunOS
truelight
parents: 6517
diff changeset
  1390
					/solaris/      { print "SUNOS";   exit}
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1391
					/cygwin/       { print "CYGWIN";  exit}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1392
					/mingw/        { print "MINGW";   exit}
5790
fee3af90258e (svn r7881) [Configure] -Fix: OS2 GCC indentifies itself with os2, not os/2
truelight
parents: 5789
diff changeset
  1393
					/os2/          { print "OS2";     exit}
6004
03795fd01cb8 (svn r8304) [WinCE] -Add: added configure detection for WinCE.
truelight
parents: 5838
diff changeset
  1394
					/wince/        { print "WINCE";   exit}
6208
ff9b5772fb65 (svn r8628) [PSP] -Add: added configure support for the PlayStation Portable target
truelight
parents: 6192
diff changeset
  1395
					/psp/          { print "PSP";     exit}
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1396
		'`
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1397
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1398
		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
  1399
			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
  1400
					/linux/        { print "UNIX";    exit}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1401
					/darwin/       { print "OSX";     exit}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1402
					/freebsd/      { print "FREEBSD"; exit}
9624
b71483f2330f (svn r9915) [NoAI] -Sync with trunk -r9815:9914
glx
parents: 9623
diff changeset
  1403
					/openbsd/      { print "OPENBSD"; exit}
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1404
					/morphos/      { print "MORPHOS"; exit}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1405
					/beos/         { print "BEOS";    exit}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1406
					/sunos/        { print "SUNOS";   exit}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1407
					/cygwin/       { print "CYGWIN";  exit}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1408
					/mingw/        { print "MINGW";   exit}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1409
					/os\/2/        { print "OS2";     exit}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1410
			'`
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
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1413
		if [ -z "$os" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1414
			log 1 "detecting OS... none detected"
9624
b71483f2330f (svn r9915) [NoAI] -Sync with trunk -r9815:9914
glx
parents: 9623
diff changeset
  1415
			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
  1416
			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
  1417
			exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1418
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1419
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1420
		log 1 "detecting OS... $os"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1421
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1422
		log 1 "forcing OS... $os"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1423
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1424
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1425
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1426
detect_sdl() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1427
	# 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
  1428
	if [ "$with_sdl" = "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1429
		log 1 "checking SDL... disabled"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1430
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1431
		sdl_config=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1432
		return 0
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1433
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1434
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1435
	if [ "$with_sdl" = "2" ] && [ "$with_cocoa" = "2" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1436
		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
  1437
		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
  1438
		exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1439
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1440
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1441
	if [ "$with_sdl" = "2" ] && [ "$enable_dedicated" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1442
		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
  1443
		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
  1444
		exit 1
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
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1447
	if [ "$enable_dedicated" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1448
		log 1 "checking SDL... skipping"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1449
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1450
		sdl_config=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1451
		return 0
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1452
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1453
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1454
	# 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
  1455
	if [ "$with_sdl" = "1" ] && [ "$os" = "OSX" ] && [ "$with_cocoa" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1456
		log 1 "checking SDL... OSX, skipping"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1457
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1458
		sdl_config=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1459
		return 0
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1460
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1461
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1462
	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
  1463
		sdl_config="sdl-config"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1464
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1465
		sdl_config="$with_sdl"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1466
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1467
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1468
	version=`$sdl_config --version 2>/dev/null`
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1469
	ret=$?
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1470
	log 2 "executing $sdl_config --version"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1471
	log 2 "  returned $version"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1472
	log 2 "  exit code $ret"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1473
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1474
	if [ -z "$version" ] || [ "$ret" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1475
		log 1 "checking SDL... not found"
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
		# 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
  1478
		if [ "$with_sdl" != "1" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1479
			log 1 "configure: error: sdl-config couldn't be found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1480
			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
  1481
			exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1482
		fi
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
		sdl_config=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1485
		return 0
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1486
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1487
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1488
	log 1 "checking SDL... found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1489
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1490
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1491
detect_cocoa() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1492
	# 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
  1493
	if [ "$with_cocoa" = "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1494
		log 1 "checking COCOA... disabled"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1495
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1496
		return 0
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1497
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1498
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1499
	if [ "$with_cocoa" = "2" ] && [ "$enable_dedicated" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1500
		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
  1501
		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
  1502
		exit 1
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
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1505
	if [ "$enable_dedicated" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1506
		log 1 "checking COCOA... skipping"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1507
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1508
		with_cocoa="0"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1509
		return 0
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1510
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1511
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1512
	# 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
  1513
	if [ "$with_cocoa" = "1" ] && [ "$os" != "OSX" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1514
		log 1 "checking COCOA... not OSX, skipping"
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
		with_cocoa="0"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1517
		return 0
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
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1520
	if [ "$os" != "OSX" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1521
		log 1 "checking COCOA... not OSX"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1522
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1523
		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
  1524
		exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1525
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1526
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1527
	log 1 "checking COCOA... found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1528
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1529
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
  1530
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
  1531
	# $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
  1532
	# $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
  1533
	# $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
  1534
	# $4 - header name (zlib.h)
9363
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1535
	# $5 - force static (if non-empty)
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1536
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1537
	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
  1538
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1539
	# 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
  1540
	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
  1541
		log 1 "checking $2... disabled"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1542
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
  1543
		eval "$2=\"\""
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1544
		return 0
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1545
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1546
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
  1547
	log 2 "detecting $2"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1548
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
	if [ "$1" = "1" ] || [ "$1" = "" ] || [ "$1" = "2" ]; then
9629
66dde6412125 (svn r10350) [NoAI] -Sync with trunk r10194:10349
glx
parents: 9628
diff changeset
  1550
		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
  1551
		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
  1552
		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
  1553
			log 2 "  trying /usr/include/$4... no"
9629
66dde6412125 (svn r10350) [NoAI] -Sync with trunk r10194:10349
glx
parents: 9628
diff changeset
  1554
			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
  1555
		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
  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
		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
  1558
			log 2 "  trying /usr/local/include/$4... no"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1559
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1560
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
  1561
		eval "res=\$$2"
9363
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1562
		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
  1563
			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
  1564
			log 2 "  trying $res... found"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1565
			# Now find the static lib, if needed
9629
66dde6412125 (svn r10350) [NoAI] -Sync with trunk r10194:10349
glx
parents: 9628
diff changeset
  1566
			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
  1567
			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
  1568
			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
  1569
				log 2 "  trying /lib/$3... no"
9629
66dde6412125 (svn r10350) [NoAI] -Sync with trunk r10194:10349
glx
parents: 9628
diff changeset
  1570
				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
  1571
			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
  1572
			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
  1573
			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
  1574
				log 2 "  trying /usr/lib/$3... no"
9629
66dde6412125 (svn r10350) [NoAI] -Sync with trunk r10194:10349
glx
parents: 9628
diff changeset
  1575
				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
  1576
			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
  1577
			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
  1578
			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
  1579
				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
  1580
				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
  1581
				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
  1582
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1583
				exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1584
			fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1585
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1586
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1587
		# 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
  1588
		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
  1589
			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
  1590
		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
  1591
			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
  1592
		fi
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1593
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1594
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
	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
  1596
	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
  1597
		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
  1598
		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
  1599
			log 1 "configure: error: $2 couldn't be found"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1600
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1601
			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
  1602
		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
  1603
			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
  1604
			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
  1605
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1606
			exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1607
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1608
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1609
		return 0
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1610
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1611
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
  1612
	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
  1613
	log 2 "  trying $res... found"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1614
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
  1615
	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
  1616
}
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1617
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1618
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
  1619
	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
  1620
}
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1621
37f43b7ce27b (svn r8757) -Add: added libtimidity music driver (it is a nice small library simular to timidity via extmidi)
truelight
parents: 6232
diff changeset
  1622
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
  1623
	detect_library "$with_libtimidity" "libtimidity" "libtimidity.a" "timidity.h"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1624
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1625
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1626
detect_png() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1627
	# 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
  1628
	if [ "$with_png" = "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1629
		log 1 "checking libpng... disabled"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1630
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1631
		png_config=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1632
		return 0
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1633
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1634
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1635
	if [ "$with_zlib" = "0" ] || [ "$zlib" = "" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1636
		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
  1637
		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
  1638
		exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1639
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1640
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1641
	if [ "$with_png" = "1" ] || [ "$with_png" = "" ] || [ "$with_png" = "2" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1642
		png_config="libpng-config"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1643
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1644
		png_config="$with_png"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1645
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1646
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1647
	version=`$png_config --version 2>/dev/null`
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1648
	ret=$?
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1649
	log 2 "executing $png_config --version"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1650
	log 2 "  returned $version"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1651
	log 2 "  exit code $ret"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1652
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1653
	if [ -z "$version" ] || [ "$ret" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1654
		log 1 "checking libpng... not found"
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
		# 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
  1657
		if [ "$with_png" != "1" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1658
			log 1 "configure: error: libpng-config couldn't be found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1659
			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
  1660
			exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1661
		fi
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
		png_config=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1664
		return 0
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1665
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1666
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1667
	log 1 "checking libpng... found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1668
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1669
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1670
detect_freetype() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1671
	# 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
  1672
	if [ "$with_freetype" = "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1673
		log 1 "checking libfreetype... disabled"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1674
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1675
		freetype_config=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1676
		return 0
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1677
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1678
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1679
	if [ "$with_zlib" = "0" ] || [ "$zlib" = "" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1680
		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
  1681
		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
  1682
		exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1683
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1684
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1685
	if [ "$with_freetype" = "1" ] || [ "$with_freetype" = "" ] || [ "$with_freetype" = "2" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1686
		freetype_config="freetype-config"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1687
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1688
		freetype_config="$with_freetype"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1689
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1690
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1691
	version=`$freetype_config --version 2>/dev/null`
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1692
	ret=$?
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1693
	log 2 "executing freetype_config --version"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1694
	log 2 "  returned $version"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1695
	log 2 "  exit code $ret"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1696
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1697
	if [ -z "$version" ] || [ "$ret" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1698
		log 1 "checking libfreetype... not found"
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
		# 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
  1701
		if [ "$with_freetype" != "1" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1702
			log 1 "configure: error: freetype-config couldn't be found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1703
			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
  1704
			exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1705
		fi
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
		freetype_config=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1708
		return 0
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1709
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1710
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1711
	log 1 "checking libfreetype... found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1712
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1713
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1714
detect_fontconfig() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1715
	# 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
  1716
	if [ "$with_fontconfig" = "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1717
		log 1 "checking libfontconfig... disabled"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1718
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1719
		fontconfig_config=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1720
		return 0
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1721
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1722
6575
ce92be4d7a8d (svn r9053) -Change [Config]: removed unneeded stuff for windows
glx
parents: 6572
diff changeset
  1723
	if [ "$os" = "MINGW" ] || [ "$os" = "CYGWIN" ] || [ "$os" = "WINCE" ]; then
ce92be4d7a8d (svn r9053) -Change [Config]: removed unneeded stuff for windows
glx
parents: 6572
diff changeset
  1724
		log 1 "checking libfontconfig... WIN32, skipping"
ce92be4d7a8d (svn r9053) -Change [Config]: removed unneeded stuff for windows
glx
parents: 6572
diff changeset
  1725
		fontconfig_config=""
ce92be4d7a8d (svn r9053) -Change [Config]: removed unneeded stuff for windows
glx
parents: 6572
diff changeset
  1726
		return 0
ce92be4d7a8d (svn r9053) -Change [Config]: removed unneeded stuff for windows
glx
parents: 6572
diff changeset
  1727
	fi
ce92be4d7a8d (svn r9053) -Change [Config]: removed unneeded stuff for windows
glx
parents: 6572
diff changeset
  1728
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1729
	if [ "$with_fontconfig" = "1" ] || [ "$with_fontconfig" = "" ] || [ "$with_fontconfig" = "2" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1730
		fontconfig_config="pkg-config fontconfig"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1731
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1732
		fontconfig_config="$with_fontconfig"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1733
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1734
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1735
	version=`$fontconfig_config --modversion 2>/dev/null`
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1736
	ret=$?
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1737
	shortversion=`echo $version | cut -c 1,3`
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1738
	log 2 "executing $fontconfig_config --modversion"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1739
	log 2 "  returned $version"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1740
	log 2 "  exit code $ret"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1741
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1742
	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
  1743
		if [ -n "$shortversion" ] && [ "$shortversion" -le "22" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1744
			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
  1745
		else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1746
			log 1 "checking libfontconfig... not found"
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
		# 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
  1750
		if [ "$with_fontconfig" != "1" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1751
			log 1 "configure: error: fontconfig-config couldn't be found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1752
			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
  1753
			exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1754
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1755
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1756
		fontconfig_config=""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1757
		return 0
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1758
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1759
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1760
	log 1 "checking libfontconfig... found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1761
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1762
6209
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1763
detect_pspconfig() {
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1764
	# 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
  1765
	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
  1766
		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
  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
6212
39deaa03d180 (svn r8633) [PSP] -Fix r8629: mixed psp-config and pspconfig, making ./configure --reconfig to fail
truelight
parents: 6211
diff changeset
  1772
	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
  1773
		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
  1774
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1775
		psp_config="";
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1776
		return 0
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
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1779
	if [ "$os" != "PSP" ]; then
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1780
		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
  1781
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1782
		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
  1783
		exit 1
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1784
	fi
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1785
6212
39deaa03d180 (svn r8633) [PSP] -Fix r8629: mixed psp-config and pspconfig, making ./configure --reconfig to fail
truelight
parents: 6211
diff changeset
  1786
	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
  1787
		psp_config="psp-config"
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1788
	else
6212
39deaa03d180 (svn r8633) [PSP] -Fix r8629: mixed psp-config and pspconfig, making ./configure --reconfig to fail
truelight
parents: 6211
diff changeset
  1789
		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
  1790
	fi
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1791
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1792
	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
  1793
	ret=$?
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1794
	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
  1795
	log 2 "  returned $version"
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1796
	log 2 "  exit code $ret"
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1797
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1798
	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
  1799
		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
  1800
		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
  1801
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1802
		# 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
  1803
		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
  1804
			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
  1805
		fi
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1806
		exit 1
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1807
	fi
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1808
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1809
	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
  1810
}
2505d5d90992 (svn r8629) [PSP] -Add: added psp-config detection in configure for PSP target
truelight
parents: 6208
diff changeset
  1811
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1812
detect_iconv() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1813
	# 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
  1814
	if [ "$with_iconv" = "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1815
		log 1 "checking iconv... disabled"
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
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1820
	if [ "$with_iconv" = "1" ] && [ "$os" != "OSX" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1821
		log 1 "checking iconv... not OSX, skipping"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1822
		with_iconv="0"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1823
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1824
		return 0
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1825
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1826
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1827
	# 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
  1828
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1829
	if [ "$with_iconv" = "1" ] || [ "$with_iconv" = "" ] || [ "$with_iconv" = "2" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1830
		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
  1831
		if [ -z "$iconv" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1832
			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
  1833
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1834
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1835
		# Make sure it exists
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1836
		iconv=`ls $with_iconv/include/iconv.h 2>/dev/null`
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1837
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1838
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1839
	if [ -z "$iconv" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1840
		log 1 "checking iconv... not found"
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1841
		if [ "$with_iconv" = "2" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1842
			log 1 "configure: error: iconv couldn't be found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1843
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1844
			exit 1
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1845
		elif [ "$with_iconv" != "1" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1846
			log 1 "configure: error: iconv couldn't be found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1847
			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
  1848
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1849
			exit 1
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
		return 0
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1853
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1854
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1855
	if [ "$with_iconv" = "1" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1856
		with_iconv="2"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1857
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1858
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1859
	log 2 "found iconv in $iconv"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1860
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1861
	log 1 "checking iconv... found"
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
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1864
_detect_sort() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1865
	sort_test_in="d
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1866
a
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1867
c
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1868
b"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1869
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1870
	sort_test_out="a
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1871
b
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1872
c
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1873
d"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1874
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1875
	log 2 "running echo <array> | $1"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1876
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1877
	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
  1878
		sort="$1"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1879
		log 2 "  result was valid"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1880
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1881
		log 2 "  result was invalid"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1882
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1883
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1884
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1885
detect_sort() {
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1886
	if [ "$with_sort" = "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1887
		log 1 "checking sort... disabled"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1888
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1889
		return
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1890
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1891
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1892
	if [ "$with_sort" = "1" ] || [ "$with_sort" = "2" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1893
		_detect_sort "sort"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1894
		if [ -z "$sort" ]; then _detect_sort "/sbin/sort"; fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1895
		if [ -z "$sort" ]; then _detect_sort "/usr/sbin/sort"; fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1896
		if [ -z "$sort" ]; then _detect_sort "/usr/local/sbin/sort"; fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1897
		if [ -z "$sort" ]; then _detect_sort "/bin/sort"; fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1898
		if [ -z "$sort" ]; then _detect_sort "/usr/bin/sort"; fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1899
		if [ -z "$sort" ]; then _detect_sort "/usr/local/bin/sort"; fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1900
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1901
		_detect_sort "$with_sort"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1902
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1903
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1904
	if [ -z "$sort" ]; then
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1905
		if [ "$with_sort" = "2" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1906
			log 1 "checking sort... not found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1907
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1908
			log 1 "configure: error: couldn't detect sort on your system"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1909
			exit 1
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1910
		elif [ "$with_sort" != "1" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1911
			log 1 "checking sort... $with_sort not found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1912
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1913
			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
  1914
			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
  1915
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1916
			exit 1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1917
		else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1918
			log 1 "checking sort... not found"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1919
		fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1920
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1921
		log 1 "checking sort... $sort"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1922
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1923
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1924
9363
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1925
detect_cputype() {
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1926
	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
  1927
		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
  1928
		return;
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1929
	fi
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1930
	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
  1931
	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
  1932
	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
  1933
	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
  1934
	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
  1935
	ret=$?
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1936
	log 2 "executing $execute"
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1937
	log 2 "  returned $cpu_type"
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1938
	log 2 "  exit code $ret"
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1939
	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
  1940
	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
  1941
	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
  1942
}
56b5886b5cfc (svn r9148) [NoAI] -Add: added 32/64bit detection support in config.lib
truelight
parents: 6626
diff changeset
  1943
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1944
make_sed() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1945
	# 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
  1946
	#  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
  1947
	#  automatically correct
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1948
	# 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
  1949
	#  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
  1950
	#  bytes too, but only for PPC.
9629
66dde6412125 (svn r10350) [NoAI] -Sync with trunk r10194:10349
glx
parents: 9628
diff changeset
  1951
	ppc=`$cc_host -dumpmachine | egrep "powerpc|ppc"`
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1952
	if [ -n "$ppc" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1953
		T_CFLAGS="$CFLAGS -DFOUR_BYTE_BOOL"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1954
		osx_sysroot_version=10.3.9
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1955
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1956
		T_CFLAGS="$CFLAGS"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1957
		osx_sysroot_version=10.4u
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1958
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1959
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1960
	T_LDFLAGS="$LDFLAGS"
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  1961
	if [ "$with_osx_sysroot" = "3" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1962
		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
  1963
		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
  1964
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1965
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1966
	SRC_OBJS_DIR="$BASE_SRC_OBJS_DIR/$OBJS_SUBDIR"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1967
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1968
	# All the data needed to compile a single target
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1969
	#  Make sure if you compile multiple targets to
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1970
	#  use multiple OBJS_DIR, because all in-between
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1971
	#  binaries are stored in there, and nowhere else.
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1972
	SRC_REPLACE="
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1973
		s#!!CC_HOST!!#$cc_host#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1974
		s#!!CXX_HOST!!#$cxx_host#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1975
		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
  1976
		s#!!CXX_BUILD!!#$cxx_build#g;
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1977
		s#!!WINDRES!!#$windres#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1978
		s#!!STRIP!!#$strip $strip_arg#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1979
		s#!!LIPO!!#$lipo#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1980
		s#!!CC_CFLAGS!!#$CC_CFLAGS#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1981
		s#!!CFLAGS!!#$T_CFLAGS#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1982
		s#!!CFLAGS_BUILD!!#$CFLAGS_BUILD#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1983
		s#!!STRGEN_FLAGS!!#$strgen_flags#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1984
		s#!!LIBS!!#$LIBS#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1985
		s#!!LDFLAGS!!#$T_LDFLAGS#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1986
		s#!!BIN_DIR!!#$BIN_DIR#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1987
		s#!!ROOT_DIR!!#$ROOT_DIR#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1988
		s#!!MEDIA_DIR!!#$MEDIA_DIR#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1989
		s#!!SOURCE_LIST!!#$SOURCE_LIST#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1990
		s#!!SRC_OBJS_DIR!!#$SRC_OBJS_DIR#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1991
		s#!!LANG_OBJS_DIR!!#$LANG_OBJS_DIR#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1992
		s#!!SRC_DIR!!#$SRC_DIR#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1993
		s#!!OSXAPP!!#$OSXAPP#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1994
		s#!!LANG_DIR!!#$LANG_DIR#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1995
		s#!!TTD!!#$TTD#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1996
		s#!!BINARY_DIR!!#$prefix_dir/$binary_dir#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1997
		s#!!DATA_DIR!!#$prefix_dir/$data_dir#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1998
		s#!!ICON_DIR!!#$prefix_dir/$icon_dir#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  1999
		s#!!PERSONAL_DIR!!#$personal_dir#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2000
		s#!!INSTALL_DIR!!#$install_dir#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2001
		s#!!STRGEN!!#$STRGEN#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2002
		s#!!ENDIAN_CHECK!!#$ENDIAN_CHECK#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2003
		s#!!ENDIAN_FORCE!!#$endian#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2004
		s#!!STAGE!!#$STAGE#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2005
		s#!!MAKEDEPEND!!#$makedepend#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2006
		s#!!CFLAGS_MAKEDEP!!#$cflags_makedep#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2007
		s#!!SORT!!#$sort#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2008
		s#!!CONFIG_CACHE_COMPILER!!#config.cache.compiler#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2009
		s#!!CONFIG_CACHE_LINKER!!#config.cache.linker#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2010
		s#!!CONFIG_CACHE_ENDIAN!!#config.cache.endian#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2011
		s#!!CONFIG_CACHE_SOURCE!!#config.cache.source#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2012
		s#!!CONFIG_CACHE_VERSION!!#config.cache.version#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2013
		s#!!CONFIG_CACHE_SOURCE_LIST!!#config.cache.source.list#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2014
		s#!!LANG_SUPPRESS!!#$lang_suppress#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2015
		s#!!OBJS_C!!#$OBJS_C#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2016
		s#!!OBJS_CPP!!#$OBJS_CPP#g;
6192
c6adfc929c6b (svn r8605) -Codechange: [OSX] changed all objective C to objective C++
bjarni
parents: 6174
diff changeset
  2017
		s#!!OBJS_MM!!#$OBJS_MM#g;
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2018
		s#!!OBJS_RC!!#$OBJS_RC#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2019
		s#!!SRCS!!#$SRCS#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2020
		s#!!OS!!#$os#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2021
		s#!!CONFIGURE_FILES!!#$CONFIGURE_FILES#g;
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2022
		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
  2023
		s#!!AWK!!#$awk#g;
9601
b499fdd106d5 (svn r9713) [NoAI] -Sync with trunk (r9631:9712).
rubidium
parents: 9569
diff changeset
  2024
		s#!!GCC295!!#$gcc295#g;
9626
79f2b5a0cdd7 (svn r10118) [NoAI] -Sync with trunk r10015:r10096
glx
parents: 9624
diff changeset
  2025
		s#!!DISTCC!!#$distcc#g;
5726
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
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2028
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2029
generate_main() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2030
	STAGE="[MAIN]"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2031
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2032
	make_sed
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2033
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2034
	# Create the main Makefile
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2035
	echo "Generating Makefile..."
5806
67ed054c6881 (svn r7939) Fix useless use of cat
tron
parents: 5802
diff changeset
  2036
	< $ROOT_DIR/Makefile.in sed "$SRC_REPLACE" > Makefile
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2037
	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
  2038
	echo >> Makefile.am
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2039
	# 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
  2040
	cp $SOURCE_LIST config.cache.source.list
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2041
	# Make sure config.cache is OLDER then config.cache.source.list
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2042
	touch config.cache
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2043
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2044
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2045
generate_lang() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2046
	STAGE="[LANG]"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2047
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2048
	make_sed
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2049
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2050
	# Create the language file
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2051
	mkdir -p $LANG_OBJS_DIR
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2052
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2053
	echo "Generating lang/Makefile..."
5806
67ed054c6881 (svn r7939) Fix useless use of cat
tron
parents: 5802
diff changeset
  2054
	< $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
  2055
	echo "DIRS += $LANG_OBJS_DIR" >> Makefile.am
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2056
	echo "LANG_DIRS += $LANG_OBJS_DIR" >> Makefile.am
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2057
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2058
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2059
generate_src_normal() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2060
	STAGE=$1
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2061
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2062
	make_sed
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2063
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2064
	# Create the source file
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2065
	mkdir -p $SRC_OBJS_DIR
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2066
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2067
	echo "Generating $2/Makefile..."
5806
67ed054c6881 (svn r7939) Fix useless use of cat
tron
parents: 5802
diff changeset
  2068
	< $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
  2069
	echo "DIRS += $SRC_OBJS_DIR" >> Makefile.am
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2070
	echo "SRC_DIRS += $SRC_OBJS_DIR" >> Makefile.am
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2071
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2072
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2073
generate_src_osx() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2074
	cc_host_orig="$cc_host"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2075
	cxx_host_orig="$cxx_host"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2076
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2077
	BASE_SRC_OBJS_DIR="$OBJS_DIR/ppc"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2078
	cc_host="$cc_host_orig -arch ppc"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2079
	cxx_host="$cxx_host_orig -arch ppc"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2080
	generate_src_normal "[PowerPC]" "objs/ppc"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2081
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
  2082
	BASE_SRC_OBJS_DIR="$OBJS_DIR/intel"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2083
	cc_host="$cc_host_orig -arch i386"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2084
	cxx_host="$cxx_host_orig -arch i386"
5745
b645533af30f (svn r7778) -Fix (r7777): intel -> Intel
truelight
parents: 5744
diff changeset
  2085
	generate_src_normal "[Intel]" "objs/intel"
5726
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
	BASE_SRC_OBJS_DIR="$OBJS_DIR/ppc970"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2088
	cc_host="$cc_host_orig -arch ppc970"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2089
	cxx_host="$cxx_host_orig -arch ppc970"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2090
	CFLAGS="$CFLAGS -mtune=970 -mcpu=970 -mpowerpc-gpopt"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2091
	generate_src_normal "[PowerPC G5]" "objs/ppc970"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2092
}
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
generate_src() {
5809
cd61f8b74f7d (svn r7942) Trim another 192 lines from the configure monster
tron
parents: 5808
diff changeset
  2095
	if [ "$os" = "OSX" ] && [ "$enable_universal" != "0" ]; then
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2096
		generate_src_osx
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2097
	else
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2098
		generate_src_normal "[SRC]" "objs"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2099
	fi
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2100
}
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2101
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2102
showhelp() {
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2103
	echo "'configure' configures OpenTTD."
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 "Usage: $0 [OPTION]... [VAR=VALUE]..."
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2106
	echo ""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2107
	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
  2108
	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
  2109
	echo ""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2110
	echo "Defaults for the options are specified in brackets."
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2111
	echo ""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2112
	echo "Configuration:"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2113
	echo "  -h, --help                     display this help and exit"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2114
	echo ""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2115
	echo "System types:"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2116
	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
  2117
	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
  2118
	echo "                                 on HOST [BUILD]"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2119
	echo "  --windres=WINDRES              the windres to use [HOST-windres]"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2120
	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
  2121
	echo "  --awk=AWK                      the awk to use in configure [awk]"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2122
	echo "  --lipo=LIPO                    the lipo to use (OSX ONLY) [HOST-lipo]"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2123
	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
  2124
	echo "                                 DETECT/UNIX/OSX/FREEBSD/OPENBSD/MORPHOS/"
b71483f2330f (svn r9915) [NoAI] -Sync with trunk -r9815:9914
glx
parents: 9623
diff changeset
  2125
	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
  2126
	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
  2127
	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
  2128
	echo "                                 Use with care!"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2129
	echo ""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2130
	echo "Paths:"
5742
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2131
	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
  2132
	echo "                                 files [/usr/local]"
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2133
	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
  2134
	echo "                                 with the prefix-dir [games]"
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2135
	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
  2136
	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
  2137
	echo "                                 [share/games/openttd]"
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2138
	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
  2139
	echo "                                 with the prefix-dir [share/pixmaps]"
9628
b5c2449616b5 (svn r10195) [NoAI] -Sync: with trunk r10119:10194.
rubidium
parents: 9626
diff changeset
  2140
	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
  2141
	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
  2142
	echo "                                 Useful to install into jails [/]"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2143
	echo ""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2144
	echo "Features and packages:"
5742
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2145
	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
  2146
	echo "  --enable-profiling             enables profiling"
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2147
	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
  2148
	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
  2149
	echo "                                 all HOSTs)"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2150
	echo "  --enable-translator            enable extra output for translators"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2151
	echo "  --enable-universal             enable universal builds (OSX ONLY)"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2152
	echo "  --enable-osx-g5                enables optimalizations for G5 (OSX ONLY)"
9704
197cb8c6ae17 (svn r11221) [NoAI] -Sync: with trunk r11145:11220
glx
parents: 9703
diff changeset
  2153
	echo "  --disable-unicode              disable unicode support to build win9x"
197cb8c6ae17 (svn r11221) [NoAI] -Sync: with trunk r11145:11220
glx
parents: 9703
diff changeset
  2154
	echo "                                 version (Win32 ONLY)"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2155
	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
  2156
	echo "  --disable-assert               disable asserts (continue on errors)"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2157
	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
  2158
	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
  2159
	echo "                                 (OSX ONLY)"
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2160
	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
  2161
	echo "                                 (OSX ONLY)"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2162
	echo "  --with-direct-music            enable direct music support (Win32 ONLY)"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2163
	echo "  --with-sort=sort               define a non-default location for sort"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2164
	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
  2165
	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
  2166
	echo "                                 midi-player"
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2167
	echo "  --with-cocoa                   enables COCOA video driver (OSX ONLY)"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2168
	echo "  --with-sdl[=sdl-config]        enables SDL video driver support"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2169
	echo "  --with-zlib[=zlib.a]           enables zlib support"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2170
	echo "  --with-png[=libpng-config]     enables libpng support"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2171
	echo "  --with-freetype[=freetype-config]"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2172
	echo "                                 enables libfreetype support"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2173
	echo "  --with-fontconfig[=pkg-config fontconfig]"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2174
	echo "                                 enables fontconfig support"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2175
	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
  2176
	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
  2177
	echo "  --with-makedepend[=makedepend] enables makedepend support"
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 "Some influential environment variables:"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2180
	echo "  CC                             C compiler command"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2181
	echo "  CXX                            C++ compiler command"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2182
	echo "  CFLAGS                         C compiler flags"
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2183
	echo "  WINDRES                        windres command"
5742
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2184
	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
  2185
	echo "                                 have libraries in a nonstandard"
d9948762e08b (svn r7775) -Fix (r7759): make ./configure --help lines at most 80 characters
rubidium
parents: 5736
diff changeset
  2186
	echo "                                 directory <lib dir>"
5726
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2187
	echo ""
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2188
	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
  2189
	echo "it to find libraries and programs with nonstandard names/locations."
8f399788f6c9 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium
parents:
diff changeset
  2190
}