summaryrefslogtreecommitdiff
path: root/config.lib
diff options
context:
space:
mode:
authorrubidium <rubidium@openttd.org>2007-06-17 15:48:57 +0000
committerrubidium <rubidium@openttd.org>2007-06-17 15:48:57 +0000
commit3c7a85fe9456b2bc31f3d29198bf2ec060e176f3 (patch)
tree8bc2a050b44170ed785af66e6e9045d429c789db /config.lib
parent4e4b152adb9e4fed758748622c66991be2aad730 (diff)
downloadopenttd-3c7a85fe9456b2bc31f3d29198bf2ec060e176f3.tar.xz
(svn r10182) -Codechange: rewrite most part of the file loading/searching to be more flexible.
-Codechange: add support for personal directories on Windows. -Fix [FS#153, FS#193, FS#502, FS#816, FS#854]: fix issues related to fixed names, fixed places of files/directories and application bundles.
Diffstat (limited to 'config.lib')
-rw-r--r--config.lib92
1 files changed, 31 insertions, 61 deletions
diff --git a/config.lib b/config.lib
index c07b77603..9b115a93d 100644
--- a/config.lib
+++ b/config.lib
@@ -28,11 +28,8 @@ set_default() {
binary_dir="games"
data_dir="share/games/openttd"
icon_dir="share/pixmaps"
- personal_dir=""
- custom_lang_dir=""
- second_data_dir=""
+ personal_dir="1"
install_dir="/"
- enable_install="0"
enable_debug="0"
enable_profiling="0"
enable_dedicated="0"
@@ -63,7 +60,7 @@ set_default() {
with_fontconfig="1"
with_psp_config="1"
- save_params_array="build host cc_build cc_host cxx_build cxx_host windres strip awk lipo os revision endian config_log prefix_dir binary_dir data_dir icon_dir personal_dir install_dir custom_lang_dir second_data_dir enable_install enable_debug enable_profiling enable_dedicated enable_network enable_static enable_translator enable_assert enable_strip with_distcc with_ccache 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 CC CXX CFLAGS LDFLAGS"
+ save_params_array="build host cc_build cc_host cxx_build cxx_host windres strip awk lipo os 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_ccache 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 CC CXX CFLAGS LDFLAGS"
}
detect_params() {
@@ -131,20 +128,11 @@ detect_params() {
--personal-dir) prevp_p="personal-dir";;
--personal-dir=*) personal_dir="$optarg";;
+ --without-personal-dir) personal_dir="";;
--install-dir) prevp_p="install-dir";;
--install-dir=*) install_dir="$optarg";;
-# TODO: The next few cases will be removed when the search path patch is applied
- --custom-lang-dir) prevp_p="custom-lang-dir";;
- --custom-lang-dir=*) custom_lang_dir="$optarg";;
-
- --second-data-dir) prevp_p="second-data-dir";;
- --second-data-dir=*) second_data_dir="$optarg";;
-
- --enable-install) enable_install="1";;
- --enable-install=*) enable_install="$optarg";;
-# TODO: End of to be removed cases
--enable-debug) enable_debug="1";;
@@ -623,21 +611,6 @@ check_params() {
if [ "$os" = "OSX" ] && [ "$with_application_bundle" = "1" ]; then
OSXAPP="OpenTTD.app"
-
-# TODO: remove next few lines of code when the search path patch has been applied
- if [ -n "$custom_lang_dir" ] && [ "$custom_lang_dir" != "${OSXAPP}/Contents/Resources/lang/" ]; then
- log 1 "configure: error: --custom-lang-dir and --with-application-bundle are not compatible
- exit 1
- fi
-
- if [ -n "$custom_lang_dir" ] && [ "$second_data_dir" != "${OSXAPP}/Contents/Resources/data/" ]; then
- log 1 "configure: error: --second-data-dir and --with-application-bundle are not compatible
- exit 1
- fi
-
- custom_lang_dir="${OSXAPP}/Contents/Resources/lang/"
- second_data_dir="${OSXAPP}/Contents/Resources/data/"
-# TODO: remove till here
else
OSXAPP=""
fi
@@ -720,6 +693,30 @@ check_params() {
sleep 5
fi
fi
+
+ if [ "$personal_dir" == "1" ]; then
+ if [ "$os" = "MINGW" ] || [ "$os" = "CYGWIN" ] || [ "$os" = "WINCE" ]; then
+ personal_dir="OpenTTD"
+ elif [ "$os" = "OSX" ]; then
+ personal_dir="Documents/OpenTTD"
+ else
+ personal_dir=".openttd"
+ fi
+ fi
+
+ if [ -n "$personal_dir" ]
+ then
+ log 1 "personal home directory... $personal_dir"
+ else
+ log 1 "personal home directory... none"
+ fi
+
+ if [ -n "$install_dir" ]
+ then
+ log 1 "installation directory... $install_dir"
+ else
+ log 1 "installation directory... none"
+ fi
}
make_cflags_and_ldflags() {
@@ -1018,29 +1015,11 @@ make_cflags_and_ldflags() {
LDFLAGS="$LDFLAGS -Wl,-syslibroot,/Developer/SDKs/MacOSX$with_osx_sysroot.sdk"
fi
-# TODO: remove next few lines of code when the search path patch has been applied
- if [ -n "$second_data_dir" ]; then
- CFLAGS="$CFLAGS -DSECOND_DATA_DIR=\\\\\"$second_data_dir\\\\\""
+ if [ -n "$personal_dir" ]; then
+ CFLAGS="$CFLAGS -DWITH_PERSONAL_DIR -DPERSONAL_DIR=\\\\\"$personal_dir\\\\\""
fi
- if [ -n "$custom_lang_dir" ]; then
- CFLAGS="$CFLAGS -DCUSTOM_LANG_DIR=\\\\\"$custom_lang_dir\\\\\""
- fi
-# TODO: remove till here
-
- if [ "$enable_install" = "1" ]; then
- if [ -n "$personal_dir" ]; then
- CFLAGS="$CFLAGS -DUSE_HOMEDIR=1 -DPERSONAL_DIR=\\\\\"$personal_dir/\\\\\""
- fi
-
- if [ -n "$data_dir" ]; then
- CFLAGS="$CFLAGS -DGAME_DATA_DIR=\\\\\"$prefix_dir/$data_dir/\\\\\""
- fi
-
- if [ -n "$icon_dir" ]; then
- CFLAGS="$CFLAGS -DICON_DIR=\\\\\"$prefix_dir/$icon_dir/\\\\\""
- fi
- fi
+ CFLAGS="$CFLAGS -DGLOBAL_DATA_DIR=\\\\\"$prefix_dir/$data_dir\\\\\""
log 1 "using CFLAGS... $CFLAGS $CC_CFLAGS"
log 1 "using LDFLAGS... $LIBS $LDFLAGS"
@@ -1974,7 +1953,6 @@ make_sed() {
s#!!REVISION!!#$revision#g;
s#!!AWK!!#$awk#g;
s#!!GCC295!!#$gcc295#g;
- s#!!ENABLE_INSTALL!!#$enable_install#g;
s#!!DISTCC!!#$distcc#g;
"
}
@@ -2090,18 +2068,10 @@ showhelp() {
echo " [share/games/openttd]"
echo " --icon-dir=dir location of icons. Will be prefixed"
echo " with the prefix-dir [share/pixmaps]"
- echo " --personal-dir=dir location of the personal directory []"
+ echo " --personal-dir=dir location of the personal directory [.openttd]"
echo " --install-dir=dir specifies the root to install to."
echo " Useful to install into jails [/]"
echo ""
-# TODO: The Following 3 tags will be removed when the 'search path patch' is applied
- echo " --second-data-dir=dir specifies a second directory for the"
- echo " data files"
- echo " --custom-lang-dir=dir specifies a custom directory for the"
- echo " language files"
- echo " --enable-install make a binary that uses the specified"
- echo " data-dir and icon-dir"
- echo ""
echo "Features and packages:"
echo " --enable-debug[=LVL] enable debug-mode (LVL=[0123], 0 is release)"
echo " --enable-profiling enables profiling"