~ubuntu-branches/debian/squeeze/openttd/squeeze

« back to all changes in this revision

Viewing changes to config.lib

  • Committer: Bazaar Package Importer
  • Author(s): Jordi Mallach, Matthijs Kooijman
  • Date: 2009-06-09 21:46:28 UTC
  • mfrom: (1.1.7 upstream) (2.1.4 squeeze)
  • Revision ID: james.westby@ubuntu.com-20090609214628-6z5uodi6178z050l
[ Matthijs Kooijman ]
* New upstream release.
* Link against libicu to enable right-to-left language support. 

Show diffs side-by-side

added added

removed removed

Lines of Context:
5
5
}
6
6
 
7
7
set_default() {
8
 
        released_version="0.7.0"
 
8
        released_version="0.7.1"
9
9
 
10
10
        ignore_extra_parameters="0"
11
11
        # We set all kinds of defaults for params. Later on the user can override
415
415
        configure="$CONFIGURE_EXECUTABLE --ignore-extra-parameters"
416
416
        for p in $save_params_array; do
417
417
                eval "v=\"\$$p\""
418
 
                p=`echo "$p" | sed 's~_~-~g;s~\n~~g;s~ ~\\ ~g'`
 
418
                p=`echo "$p" | sed 's@_@-@g;s@\n@@g;s@ @\\ @g'`
419
419
                # Only save those params that aren't empty
420
420
                configure="$configure --$p=\"$v\""
421
421
        done
815
815
        fi
816
816
 
817
817
        if [ "$os" = "OSX" ]; then
 
818
                check_osx_sdk
818
819
                # Test on G5
819
820
 
820
821
                if [ "$enable_osx_g5" != "0" ]; then
903
904
                        doc_dir="$data_dir/docs"
904
905
                fi
905
906
        else
906
 
                doc_dir="`echo $doc_dir | sed 's~\([^\]\)\\\\ ~\1\\\\\\\\ ~g;s~\([^\]\) ~\1\\\\\\\\ ~g'`"
 
907
                doc_dir="`echo $doc_dir | sed 's@\([^\]\)\\\\ @\1\\\\\\\\ @g;s@\([^\]\) @\1\\\\\\\\ @g'`"
907
908
        fi
908
909
 
909
910
        if [ "$icon_theme_dir" = "1" ]; then
913
914
                        icon_theme_dir=""
914
915
                fi
915
916
        else
916
 
                icon_theme_dir="`echo $icon_theme_dir | sed 's~\([^\]\)\\\\ ~\1\\\\\\\\ ~g;s~\([^\]\) ~\1\\\\\\\\ ~g'`"
 
917
                icon_theme_dir="`echo $icon_theme_dir | sed 's@\([^\]\)\\\\ @\1\\\\\\\\ @g;s@\([^\]\) @\1\\\\\\\\ @g'`"
917
918
        fi
918
919
 
919
920
        if [ "$personal_dir" = "1" ]; then
925
926
                        personal_dir=".openttd"
926
927
                fi
927
928
        else
928
 
                personal_dir="`echo $personal_dir | sed 's~\([^\]\)\\\\ ~\1\\\\\\\\ ~g;s~\([^\]\) ~\1\\\\\\\\ ~g'`"
 
929
                personal_dir="`echo $personal_dir | sed 's@\([^\]\)\\\\ @\1\\\\\\\\ @g;s@\([^\]\) @\1\\\\\\\\ @g'`"
929
930
        fi
930
931
 
931
932
        if [ "$shared_dir" = "1" ]; then
936
937
                        shared_dir=""
937
938
                fi
938
939
        else
939
 
                shared_dir="`echo $shared_dir | sed 's~\([^\]\)\\\\ ~\1\\\\\\\\ ~g;s~\([^\]\) ~\1\\\\\\\\ ~g'`"
 
940
                shared_dir="`echo $shared_dir | sed 's@\([^\]\)\\\\ @\1\\\\\\\\ @g;s@\([^\]\) @\1\\\\\\\\ @g'`"
940
941
        fi
941
942
 
942
943
        if [ "$man_dir" = "1" ]; then
947
948
                        man_dir=""
948
949
                fi
949
950
        else
950
 
                man_dir="`echo $man_dir | sed 's~\([^\]\)\\\\ ~\1\\\\\\\\ ~g;s~\([^\]\) ~\1\\\\\\\\ ~g'`"
 
951
                man_dir="`echo $man_dir | sed 's@\([^\]\)\\\\ @\1\\\\\\\\ @g;s@\([^\]\) @\1\\\\\\\\ @g'`"
951
952
        fi
952
953
 
953
954
        if [ "$menu_dir" = "1" ]; then
958
959
                        menu_dir=""
959
960
                fi
960
961
        else
961
 
                menu_dir="`echo $menu_dir | sed 's~\([^\]\)\\\\ ~\1\\\\\\\\ ~g;s~\([^\]\) ~\1\\\\\\\\ ~g'`"
 
962
                menu_dir="`echo $menu_dir | sed 's@\([^\]\)\\\\ @\1\\\\\\\\ @g;s@\([^\]\) @\1\\\\\\\\ @g'`"
962
963
        fi
963
964
 
964
965
        # "set_universal_binary_flags" needs to be before "detect_iconv"
1206
1207
        if [ -n "$sdl_config" ]; then
1207
1208
                CFLAGS="$CFLAGS -DWITH_SDL"
1208
1209
                # SDL must not add _GNU_SOURCE as it breaks many platforms
1209
 
                CFLAGS="$CFLAGS `$sdl_config --cflags | sed 's~-D_GNU_SOURCE[^ ]*~~'`"
 
1210
                CFLAGS="$CFLAGS `$sdl_config --cflags | sed 's@-D_GNU_SOURCE[^ ]*@@'`"
1210
1211
                if [ "$os" != "MINGW" ] && [ "$os" != "CYGWIN" ] && [ "$os" != "WINCE" ]; then
1211
1212
                        if [ "$enable_static" != "0" ]; then
1212
1213
                                LIBS="$LIBS `$sdl_config --static-libs`"
1268
1269
                        if [ "$os" = "OSX" ]; then
1269
1270
                                # fontconfig_config goes via pkg-config on all systems, which doesn't know --prefix
1270
1271
                                # 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
1271
 
                                LIBS="$LIBS `$fontconfig_config --variable=prefix`/lib/libfontconfig.a `$fontconfig_config --libs --static | sed s~-lfontconfig~~`"
 
1272
                                LIBS="$LIBS `$fontconfig_config --variable=prefix`/lib/libfontconfig.a `$fontconfig_config --libs --static | sed s@-lfontconfig@@`"
1272
1273
                        else
1273
1274
                                LIBS="$LIBS `$fontconfig_config --libs --static | tr '\n\r' '  '`"
1274
1275
                        fi
1400
1401
        # Lovely hackish, not?
1401
1402
        # Btw, this almost always comes from outside the configure, so it is
1402
1403
        #  not something we can control.
 
1404
        # Also make makedepend aware of compiler's built-in defines.
1403
1405
        if [ "$with_makedepend" != "0" ]; then
1404
 
                cflags_makedep="` echo "$CFLAGS" | sed 's~ /~ -~g;s~-I[ ]*[^ ]*~~g'`"
 
1406
                cflags_makedep="`echo | $cxx_host -E -x c++ -dM - | sed 's@.define @-D@g;s@ .*@ @g;s@(.*)@@g' | tr -d '\r\n'`"
 
1407
                cflags_makedep="$cflags_makedep `echo "$CFLAGS" | sed 's@ /@ -@g;s@-I[ ]*[^ ]*@@g'`"
1405
1408
        else
1406
1409
                makedepend=""
1407
1410
        fi
1617
1620
        fi
1618
1621
}
1619
1622
 
 
1623
check_osx_sdk() {
 
1624
cat > tmp.osx.cpp << EOF
 
1625
#include <AvailabilityMacros.h>
 
1626
#if !defined(MAC_OS_X_VERSION_10_5)
 
1627
# error "Need newer SDK"
 
1628
#endif
 
1629
int main() {
 
1630
        return 0;
 
1631
}
 
1632
EOF
 
1633
        execute="$cxx_host $CFLAGS -E tmp.osx.cpp -o - 2>&1"
 
1634
        eval $execute > /dev/null
 
1635
        ret=$?
 
1636
        log 2 "executing $execute"
 
1637
        log 2 "  exit code $ret"
 
1638
        rm -f tmp.osx.cpp
 
1639
        if [ "$ret" != "0" ]; then
 
1640
                log 1 "I couldn't detect any XCode >= 2.5 on your system"
 
1641
                log 1 "please install/upgrade your XCode"
 
1642
 
 
1643
                exit 1
 
1644
        fi
 
1645
}
 
1646
 
1620
1647
check_direct_music() {
1621
1648
        echo "
1622
1649
                #include <windows.h>
2405
2432
}
2406
2433
EOF
2407
2434
        execute="$cxx_host $CFLAGS -c tmp.iconv.cpp -o tmp.iconv -DTESTING 2>&1"
2408
 
        eval $execute >&/dev/null
 
2435
        eval $execute > /dev/null
2409
2436
        ret=$?
2410
2437
        log 2 "executing $execute"
2411
2438
        log 2 "  exit code $ret"
2426
2453
}
2427
2454
EOF
2428
2455
        execute="$cxx_host $CFLAGS tmp.iconv.cpp -o tmp.iconv -DTESTING 2>&1"
2429
 
        eval $execute >&/dev/null
 
2456
        eval $execute > /dev/null
2430
2457
        ret=$?
2431
2458
        log 2 "executing $execute"
2432
2459
        log 2 "  exit code $ret"
2537
2564
        #  use multiple OBJS_DIR, because all in-between
2538
2565
        #  binaries are stored in there, and nowhere else.
2539
2566
        SRC_REPLACE="
2540
 
                s~!!CC_HOST!!~$cc_host~g;
2541
 
                s~!!CXX_HOST!!~$cxx_host~g;
2542
 
                s~!!CC_BUILD!!~$cc_build~g;
2543
 
                s~!!CXX_BUILD!!~$cxx_build~g;
2544
 
                s~!!WINDRES!!~$windres~g;
2545
 
                s~!!STRIP!!~$strip $strip_arg~g;
2546
 
                s~!!LIPO!!~$lipo~g;
2547
 
                s~!!CC_CFLAGS!!~$CC_CFLAGS~g;
2548
 
                s~!!CFLAGS!!~$T_CFLAGS~g;
2549
 
                s~!!CFLAGS_BUILD!!~$CFLAGS_BUILD~g;
2550
 
                s~!!STRGEN_FLAGS!!~$strgen_flags~g;
2551
 
                s~!!LIBS!!~$LIBS~g;
2552
 
                s~!!LDFLAGS!!~$T_LDFLAGS~g;
2553
 
                s~!!BIN_DIR!!~$BIN_DIR~g;
2554
 
                s~!!ROOT_DIR!!~$ROOT_DIR~g;
2555
 
                s~!!MEDIA_DIR!!~$MEDIA_DIR~g;
2556
 
                s~!!SOURCE_LIST!!~$SOURCE_LIST~g;
2557
 
                s~!!SRC_OBJS_DIR!!~$SRC_OBJS_DIR~g;
2558
 
                s~!!LANG_OBJS_DIR!!~$LANG_OBJS_DIR~g;
2559
 
                s~!!SRC_DIR!!~$SRC_DIR~g;
2560
 
                s~!!SCRIPT_SRC_DIR!!~$SCRIPT_SRC_DIR~g;
2561
 
                s~!!OSXAPP!!~$OSXAPP~g;
2562
 
                s~!!LANG_DIR!!~$LANG_DIR~g;
2563
 
                s~!!TTD!!~$TTD~g;
2564
 
                s~!!BINARY_DIR!!~$prefix_dir/$binary_dir~g;
2565
 
                s~!!DATA_DIR!!~$prefix_dir/$data_dir~g;
2566
 
                s~!!DOC_DIR!!~$prefix_dir/$doc_dir~g;
2567
 
                s~!!MAN_DIR!!~$prefix_dir/$man_dir~g;
2568
 
                s~!!ICON_DIR!!~$prefix_dir/$icon_dir~g;
2569
 
                s~!!ICON_THEME_DIR!!~$prefix_dir/$icon_theme_dir~g;
2570
 
                s~!!PERSONAL_DIR!!~$personal_dir~g;
2571
 
                s~!!SHARED_DIR!!~$shared_dir~g;
2572
 
                s~!!INSTALL_DIR!!~$install_dir~g;
2573
 
                s~!!BINARY_NAME!!~$binary_name~g;
2574
 
                s~!!STRGEN!!~$STRGEN~g;
2575
 
                s~!!ENDIAN_CHECK!!~$ENDIAN_CHECK~g;
2576
 
                s~!!ENDIAN_FORCE!!~$endian~g;
2577
 
                s~!!STAGE!!~$STAGE~g;
2578
 
                s~!!MAKEDEPEND!!~$makedepend~g;
2579
 
                s~!!CFLAGS_MAKEDEP!!~$cflags_makedep~g;
2580
 
                s~!!SORT!!~$sort~g;
2581
 
                s~!!CONFIG_CACHE_COMPILER!!~config.cache.compiler~g;
2582
 
                s~!!CONFIG_CACHE_LINKER!!~config.cache.linker~g;
2583
 
                s~!!CONFIG_CACHE_ENDIAN!!~config.cache.endian~g;
2584
 
                s~!!CONFIG_CACHE_SOURCE!!~config.cache.source~g;
2585
 
                s~!!CONFIG_CACHE_VERSION!!~config.cache.version~g;
2586
 
                s~!!CONFIG_CACHE_SOURCE_LIST!!~config.cache.source.list~g;
2587
 
                s~!!CONFIG_CACHE_PWD!!~config.cache.pwd~g;
2588
 
                s~!!LANG_SUPPRESS!!~$lang_suppress~g;
2589
 
                s~!!OBJS_C!!~$OBJS_C~g;
2590
 
                s~!!OBJS_CPP!!~$OBJS_CPP~g;
2591
 
                s~!!OBJS_MM!!~$OBJS_MM~g;
2592
 
                s~!!OBJS_RC!!~$OBJS_RC~g;
2593
 
                s~!!SRCS!!~$SRCS~g;
2594
 
                s~!!OS!!~$os~g;
2595
 
                s~!!CONFIGURE_FILES!!~$CONFIGURE_FILES~g;
2596
 
                s~!!REVISION!!~$revision~g;
2597
 
                s~!!AWK!!~$awk~g;
2598
 
                s~!!GCC295!!~$gcc295~g;
2599
 
                s~!!DISTCC!!~$distcc~g;
 
2567
                s@!!CC_HOST!!@$cc_host@g;
 
2568
                s@!!CXX_HOST!!@$cxx_host@g;
 
2569
                s@!!CC_BUILD!!@$cc_build@g;
 
2570
                s@!!CXX_BUILD!!@$cxx_build@g;
 
2571
                s@!!WINDRES!!@$windres@g;
 
2572
                s@!!STRIP!!@$strip $strip_arg@g;
 
2573
                s@!!LIPO!!@$lipo@g;
 
2574
                s@!!CC_CFLAGS!!@$CC_CFLAGS@g;
 
2575
                s@!!CFLAGS!!@$T_CFLAGS@g;
 
2576
                s@!!CFLAGS_BUILD!!@$CFLAGS_BUILD@g;
 
2577
                s@!!STRGEN_FLAGS!!@$strgen_flags@g;
 
2578
                s@!!LIBS!!@$LIBS@g;
 
2579
                s@!!LDFLAGS!!@$T_LDFLAGS@g;
 
2580
                s@!!BIN_DIR!!@$BIN_DIR@g;
 
2581
                s@!!ROOT_DIR!!@$ROOT_DIR@g;
 
2582
                s@!!MEDIA_DIR!!@$MEDIA_DIR@g;
 
2583
                s@!!SOURCE_LIST!!@$SOURCE_LIST@g;
 
2584
                s@!!SRC_OBJS_DIR!!@$SRC_OBJS_DIR@g;
 
2585
                s@!!LANG_OBJS_DIR!!@$LANG_OBJS_DIR@g;
 
2586
                s@!!SRC_DIR!!@$SRC_DIR@g;
 
2587
                s@!!SCRIPT_SRC_DIR!!@$SCRIPT_SRC_DIR@g;
 
2588
                s@!!OSXAPP!!@$OSXAPP@g;
 
2589
                s@!!LANG_DIR!!@$LANG_DIR@g;
 
2590
                s@!!TTD!!@$TTD@g;
 
2591
                s@!!BINARY_DIR!!@$prefix_dir/$binary_dir@g;
 
2592
                s@!!DATA_DIR!!@$prefix_dir/$data_dir@g;
 
2593
                s@!!DOC_DIR!!@$prefix_dir/$doc_dir@g;
 
2594
                s@!!MAN_DIR!!@$prefix_dir/$man_dir@g;
 
2595
                s@!!ICON_DIR!!@$prefix_dir/$icon_dir@g;
 
2596
                s@!!ICON_THEME_DIR!!@$prefix_dir/$icon_theme_dir@g;
 
2597
                s@!!PERSONAL_DIR!!@$personal_dir@g;
 
2598
                s@!!SHARED_DIR!!@$shared_dir@g;
 
2599
                s@!!INSTALL_DIR!!@$install_dir@g;
 
2600
                s@!!BINARY_NAME!!@$binary_name@g;
 
2601
                s@!!STRGEN!!@$STRGEN@g;
 
2602
                s@!!ENDIAN_CHECK!!@$ENDIAN_CHECK@g;
 
2603
                s@!!ENDIAN_FORCE!!@$endian@g;
 
2604
                s@!!STAGE!!@$STAGE@g;
 
2605
                s@!!MAKEDEPEND!!@$makedepend@g;
 
2606
                s@!!CFLAGS_MAKEDEP!!@$cflags_makedep@g;
 
2607
                s@!!SORT!!@$sort@g;
 
2608
                s@!!CONFIG_CACHE_COMPILER!!@config.cache.compiler@g;
 
2609
                s@!!CONFIG_CACHE_LINKER!!@config.cache.linker@g;
 
2610
                s@!!CONFIG_CACHE_ENDIAN!!@config.cache.endian@g;
 
2611
                s@!!CONFIG_CACHE_SOURCE!!@config.cache.source@g;
 
2612
                s@!!CONFIG_CACHE_VERSION!!@config.cache.version@g;
 
2613
                s@!!CONFIG_CACHE_SOURCE_LIST!!@config.cache.source.list@g;
 
2614
                s@!!CONFIG_CACHE_PWD!!@config.cache.pwd@g;
 
2615
                s@!!LANG_SUPPRESS!!@$lang_suppress@g;
 
2616
                s@!!OBJS_C!!@$OBJS_C@g;
 
2617
                s@!!OBJS_CPP!!@$OBJS_CPP@g;
 
2618
                s@!!OBJS_MM!!@$OBJS_MM@g;
 
2619
                s@!!OBJS_RC!!@$OBJS_RC@g;
 
2620
                s@!!SRCS!!@$SRCS@g;
 
2621
                s@!!OS!!@$os@g;
 
2622
                s@!!CONFIGURE_FILES!!@$CONFIGURE_FILES@g;
 
2623
                s@!!REVISION!!@$revision@g;
 
2624
                s@!!AWK!!@$awk@g;
 
2625
                s@!!GCC295!!@$gcc295@g;
 
2626
                s@!!DISTCC!!@$distcc@g;
2600
2627
        "
2601
2628
 
2602
2629
        if [ "$icon_theme_dir" != "" ]; then
2603
2630
                SRC_REPLACE="$SRC_REPLACE
2604
 
                        s#!!ICON_THEME_DIR!!#$prefix_dir/$icon_theme_dir#g;
 
2631
                        s@!!ICON_THEME_DIR!!@$prefix_dir/$icon_theme_dir@g;
2605
2632
                "
2606
2633
        else
2607
2634
                SRC_REPLACE="$SRC_REPLACE
2608
 
                        s#!!ICON_THEME_DIR!!##g;
 
2635
                        s@!!ICON_THEME_DIR!!@@g;
2609
2636
                "
2610
2637
        fi
2611
2638
 
2612
2639
        if [ "$man_dir" != "" ]; then
2613
2640
                SRC_REPLACE="$SRC_REPLACE
2614
 
                        s#!!MAN_DIR!!#$prefix_dir/$man_dir#g;
 
2641
                        s@!!MAN_DIR!!@$prefix_dir/$man_dir@g;
2615
2642
                "
2616
2643
        else
2617
2644
                SRC_REPLACE="$SRC_REPLACE
2618
 
                        s#!!MAN_DIR!!##g;
 
2645
                        s@!!MAN_DIR!!@@g;
2619
2646
                "
2620
2647
        fi
2621
2648
 
2622
2649
        if [ "$menu_dir" != "" ]; then
2623
2650
                SRC_REPLACE="$SRC_REPLACE
2624
 
                        s#!!MENU_DIR!!#$prefix_dir/$menu_dir#g;
 
2651
                        s@!!MENU_DIR!!@$prefix_dir/$menu_dir@g;
2625
2652
                "
2626
2653
        else
2627
2654
                SRC_REPLACE="$SRC_REPLACE
2628
 
                        s#!!MENU_DIR!!##g;
 
2655
                        s@!!MENU_DIR!!@@g;
2629
2656
                "
2630
2657
        fi
2631
2658
}
2632
2659
 
2633
2660
generate_menu_item() {
2634
2661
        MENU_REPLACE="
2635
 
                s~!!TTD!!~$TTD~g;
2636
 
                s~!!MENU_GROUP!!~$menu_group~g;
2637
 
                s~!!MENU_NAME!!~$menu_name~g
 
2662
                s@!!TTD!!@$TTD@g;
 
2663
                s@!!MENU_GROUP!!@$menu_group@g;
 
2664
                s@!!MENU_NAME!!@$menu_name@g
2638
2665
        "
2639
2666
        log 1 "Generating menu item..."
2640
2667
        mkdir -p media