~ubuntu-branches/ubuntu/vivid/grass/vivid-proposed

« back to all changes in this revision

Viewing changes to aclocal.m4

  • Committer: Package Import Robot
  • Author(s): Bas Couwenberg
  • Date: 2015-02-20 23:12:08 UTC
  • mfrom: (8.2.6 experimental)
  • Revision ID: package-import@ubuntu.com-20150220231208-1u6qvqm84v430b10
Tags: 7.0.0-1~exp1
* New upstream release.
* Update python-ctypes-ternary.patch to use if/else instead of and/or.
* Drop check4dev patch, rely on upstream check.
* Add build dependency on libpq-dev to grass-dev for libpq-fe.h.
* Drop patches applied upstream, refresh remaining patches.
* Update symlinks for images switched from jpg to png.

Show diffs side-by-side

added added

removed removed

Lines of Context:
410
410
    if test "$shared_ok" = "yes" ; then
411
411
        AC_MSG_RESULT([shared])
412
412
        SHARED_BUILD=1
413
 
        GRASS_LIB_PREFIX='$(SHLIB_PREFIX)'
414
 
        GRASS_LIB_SUFFIX='$(SHLIB_SUFFIX)'
415
413
        GRASS_LIBRARY_TYPE='shlib'
416
414
    else
417
415
        AC_MSG_RESULT([static])
418
416
        SHARED_BUILD=0
419
417
        AC_DEFINE(STATIC_BUILD)
420
 
        GRASS_LIB_PREFIX='$(STLIB_PREFIX)'
421
 
        GRASS_LIB_SUFFIX='$(STLIB_SUFFIX)'
422
418
        GRASS_LIBRARY_TYPE='stlib'
423
419
    fi
424
 
    AC_SUBST(GRASS_LIB_PREFIX)
425
 
    AC_SUBST(GRASS_LIB_SUFFIX)
426
420
    AC_SUBST(GRASS_LIBRARY_TYPE)
427
421
])
428
422
 
451
445
#                       that tell the run-time dynamic linker where to look
452
446
#                       for shared libraries such as libtcl.so.  Depends on
453
447
#                       the variable LIB_RUNTIME_DIR in the Makefile.
454
 
#       MAKE_LIB -      Command to execute to build the a library;
455
 
#                       differs when building shared or static.
456
 
#       MAKE_STUB_LIB -
457
 
#                       Command to execute to build a stub library.
458
 
#       INSTALL_LIB -   Command to execute to install a library;
459
 
#                       differs when building shared or static.
460
 
#       INSTALL_STUB_LIB -
461
 
#                       Command to execute to install a stub library.
462
448
#       STLIB_LD -      Base command to use for combining object files
463
449
#                       into a static library.
464
450
#       SHLIB_CFLAGS -  Flags to pass to cc when compiling the components
483
469
#       SHLIB_SUFFIX -  Suffix to use for the names of dynamically loadable
484
470
#                       extensions.  An empty string means we don't know how
485
471
#                       to use shared libraries on this platform.
486
 
# GRASS_SHLIB_LD_EXTRAS - Additional element which are added to SHLIB_LD_LIBS
487
 
#                       for the build of Tcl and Tk, but not recorded in the
488
 
#                       tclConfig.sh, since they are only used for the build
489
 
#                       of Tcl and Tk. 
490
 
#                       Examples: MacOS X records the library version and
491
 
#                       compatibility version in the shared library.  But
492
 
#                       of course the Tcl version of this is only used for Tcl.
493
 
#       LIB_SUFFIX -    Specifies everything that comes after the "libfoo"
494
 
#                       in a static or shared library name, using the $LIB_VER variable
495
 
#                       to put the version in the right place.  This is used
496
 
#                       by platforms that need non-standard library names.
497
 
#                       Examples:  ${LIB_VER}.so.1.1 on NetBSD, since it needs
498
 
#                       to have a version after the .so, and ${LIB_VER}.a
499
 
#                       on AIX, since a shared library needs to have
500
 
#                       a .a extension whereas shared objects for loadable
501
 
#                       extensions have a .so extension.  Defaults to
502
 
#                       ${LIB_VER}${SHLIB_SUFFIX}.
503
 
#       GRASS_NEEDS_EXP_FILE -
504
 
#                       1 means that an export file is needed to link to a
505
 
#                       shared library.
506
 
#       GRASS_EXP_FILE -  The name of the installed export / import file which
507
 
#                       should be used to link to the Tcl shared library.
508
 
#                       Empty if Tcl is unshared.
509
 
#       GRASS_BUILD_EXP_FILE -
510
 
#                       The name of the built export / import file which
511
 
#                       should be used to link to the Tcl shared library.
512
 
#                       Empty if Tcl is unshared.
513
 
#       GRASS_LIBS -
514
 
#                       Libs to use when linking Tcl shell or some other
515
 
#                       shell that includes Tcl libs.
516
 
#       CFLAGS_DEBUG -
517
 
#                       Flags used when running the compiler in debug mode
518
 
#       CFLAGS_OPTIMIZE -
519
 
#                       Flags used when running the compiler in optimize mode
520
 
#       EXTRA_CFLAGS
521
472
#
522
473
#--------------------------------------------------------------------
523
474
 
524
475
AC_DEFUN([SC_CONFIG_CFLAGS], [
525
 
 
526
 
    # Step 0.a: Enable 64 bit support?
527
 
 
528
 
    AC_MSG_CHECKING([if 64bit support is requested])
529
 
    AC_ARG_ENABLE(64bit,[  --enable-64bit          enable 64bit support (where applicable)],,enableval="no")
530
 
 
531
 
    if test "$enableval" = "yes"; then
532
 
        do64bit=yes
533
 
    else
534
 
        do64bit=no
535
 
    fi
536
 
    AC_MSG_RESULT($do64bit)
537
 
 
538
 
    # Step 0.b: Enable Solaris 64 bit VIS support?
539
 
 
540
 
    AC_MSG_CHECKING([if 64bit Sparc VIS support is requested])
541
 
    AC_ARG_ENABLE(64bit-vis,[  --enable-64bit-vis      enable 64bit Sparc VIS support],,enableval="no")
542
 
 
543
 
    if test "$enableval" = "yes"; then
544
 
        # Force 64bit on with VIS
545
 
        do64bit=yes
546
 
        do64bitVIS=yes
547
 
    else
548
 
        do64bitVIS=no
549
 
    fi
550
 
    AC_MSG_RESULT($do64bitVIS)
551
 
 
552
 
    # Step 1: set the variable "system" to hold the name and version number
553
 
    # for the system.  This can usually be done via the "uname" command, but
554
 
    # there are a few systems, like Next, where this doesn't work.
555
 
 
556
 
    AC_MSG_CHECKING([system version (for dynamic loading)])
557
 
    if test -f /usr/lib/NextStep/software_version; then
558
 
        system=NEXTSTEP-`awk '/3/,/3/' /usr/lib/NextStep/software_version`
559
 
    else
560
 
        system=`uname -s`-`uname -r`
561
 
        if test "$?" -ne 0 ; then
562
 
            AC_MSG_RESULT([unknown (can't find uname command)])
563
 
            system=unknown
564
 
        else
565
 
            # Special check for weird MP-RAS system (uname returns weird
566
 
            # results, and the version is kept in special file).
567
 
        
568
 
            if test -r /etc/.relid -a "X`uname -n`" = "X`uname -s`" ; then
569
 
                system=MP-RAS-`awk '{print $3}' /etc/.relid`
570
 
            fi
571
 
            if test "`uname -s`" = "AIX" ; then
572
 
                system=AIX-`uname -v`.`uname -r`
573
 
            fi
574
 
            AC_MSG_RESULT($system)
575
 
        fi
576
 
    fi
577
 
 
578
 
    # Step 2: check for existence of -ldl library.  This is needed because
579
 
    # Linux can use either -ldl or -ldld for dynamic loading.
580
 
 
581
 
    AC_CHECK_LIB(dl, dlopen, have_dl=yes, have_dl=no)
582
 
 
583
 
    # Require ranlib early so we can override it in special cases below.
584
 
 
585
 
    AC_REQUIRE([AC_PROG_RANLIB])
586
 
 
587
 
    # Step 3: set configuration options based on system name and version.
588
 
 
589
 
    do64bit_ok=no
590
 
    EXTRA_CFLAGS=""
591
 
    GRASS_EXPORT_FILE_SUFFIX=""
592
 
    UNSHARED_LIB_SUFFIX=""
 
476
    SHLIB_CFLAGS=""
 
477
    SHLIB_LD_FLAGS=""
 
478
    SHLIB_SUFFIX=""
 
479
    SHLIB_LD=""
 
480
    STLIB_LD='${AR} cr'
 
481
    STLIB_SUFFIX='.a'
593
482
    GRASS_TRIM_DOTS='`echo ${LIB_VER} | tr -d .`'
594
 
    ECHO_VERSION='`echo ${LIB_VER}`'
595
483
    GRASS_LIB_VERSIONS_OK=ok
596
 
    CFLAGS_DEBUG=-g
597
 
    CFLAGS_OPTIMIZE=-O
598
 
    if test "$GCC" = "yes" ; then
599
 
        CFLAGS_WARNING="-Wall -Wconversion -Wno-implicit-int"
600
 
    else
601
 
        CFLAGS_WARNING=""
602
 
    fi
603
 
    GRASS_NEEDS_EXP_FILE=0
604
 
    GRASS_BUILD_EXP_FILE=""
605
 
    GRASS_EXP_FILE=""
606
 
dnl FIXME: Replace AC_CHECK_PROG with AC_CHECK_TOOL once cross compiling is fixed.
607
 
dnl AC_CHECK_TOOL(AR, ar)
608
 
    AC_CHECK_PROG(AR, ar, ar)
609
 
    if test "${AR}" = "" ; then
610
 
        AC_MSG_ERROR([Required archive tool 'ar' not found on PATH.])
611
 
    fi
612
 
    STLIB_LD='${AR} cr'
 
484
    LDFLAGS=""
 
485
    LD_SEARCH_FLAGS=""
613
486
    LD_LIBRARY_PATH_VAR="LD_LIBRARY_PATH"
614
 
    PLAT_OBJS=""
615
 
    case $system in
616
 
        AIX-5.*)
617
 
            if test "${GRASS_THREADS}" = "1" -a "$GCC" != "yes" ; then
618
 
                # AIX requires the _r compiler when gcc isn't being used
619
 
                if test "${CC}" != "cc_r" ; then
620
 
                    CC=${CC}_r
621
 
                fi
622
 
                AC_MSG_RESULT(Using $CC for compiling with threads)
623
 
            fi
624
 
            LIBS="$LIBS -lc"
625
 
            # AIX-5 uses ELF style dynamic libraries
626
 
            SHLIB_CFLAGS=""
627
 
            # Note: need the LIBS below, otherwise Tk won't find Tcl's
628
 
            # symbols when dynamically loaded into tclsh.
629
 
            SHLIB_LD_LIBS='${LIBS}'
630
 
            SHLIB_SUFFIX=".so"
631
 
 
632
 
            LDFLAGS=""
633
 
 
634
 
            LD_LIBRARY_PATH_VAR="LIBPATH"
635
 
 
636
 
            # Check to enable 64-bit flags for compiler/linker
637
 
            if test "$do64bit" = "yes" ; then
638
 
                if test "$GCC" = "yes" ; then
639
 
                    AC_MSG_WARN("64bit mode not supported with GCC on $system")
640
 
                else 
641
 
                    do64bit_ok=yes
642
 
                    EXTRA_CFLAGS="-q64"
643
 
                    LDFLAGS="-q64"
644
 
                    RANLIB="${RANLIB} -X64"
645
 
                    AR="${AR} -X64"
646
 
                    SHLIB_LD_FLAGS="-b64"
647
 
                fi
648
 
            fi
649
 
 
650
 
            if test "`uname -m`" = "ia64" ; then
651
 
                # AIX-5 uses ELF style dynamic libraries on IA-64, but not PPC
652
 
                SHLIB_LD="/usr/ccs/bin/ld -G -z text"
653
 
                # AIX-5 has dl* in libc.so
654
 
                if test "$GCC" = "yes" ; then
655
 
                    CC_SEARCH_FLAGS='-Wl,-R,${LIB_RUNTIME_DIR}'
656
 
                else
657
 
                    CC_SEARCH_FLAGS='-R${LIB_RUNTIME_DIR}'
658
 
                fi
659
 
                LD_SEARCH_FLAGS='-R ${LIB_RUNTIME_DIR}'
660
 
            else
661
 
                #SHLIB_LD="${SRCDIR}/ldAix /bin/ld -bhalt:4 -bM:SRE -bE:lib.exp -H512 -T512 -bnoentry ${SHLIB_LD_FLAGS}"
662
 
                SHLIB_LD="$CC -shared"
663
 
                CC_SEARCH_FLAGS='-L${LIB_RUNTIME_DIR}'
664
 
                LD_SEARCH_FLAGS=${CC_SEARCH_FLAGS}
665
 
                GRASS_NEEDS_EXP_FILE=1
666
 
                GRASS_EXPORT_FILE_SUFFIX='${LIB_VER}.exp'
667
 
            fi
668
 
            ;;
669
 
        AIX-*)
670
 
            if test "${GRASS_THREADS}" = "1" -a "$GCC" != "yes" ; then
671
 
                # AIX requires the _r compiler when gcc isn't being used
672
 
                if test "${CC}" != "cc_r" ; then
673
 
                    CC=${CC}_r
674
 
                fi
675
 
                AC_MSG_RESULT(Using $CC for compiling with threads)
676
 
            fi
677
 
            LIBS="$LIBS -lc"
678
 
            SHLIB_CFLAGS=""
679
 
            SHLIB_LD_LIBS='${LIBS}'
680
 
            SHLIB_SUFFIX=".so"
681
 
            LDFLAGS=""
682
 
            CC_SEARCH_FLAGS='-L${LIB_RUNTIME_DIR}'
683
 
            LD_SEARCH_FLAGS=${CC_SEARCH_FLAGS}
684
 
            LD_LIBRARY_PATH_VAR="LIBPATH"
685
 
            GRASS_NEEDS_EXP_FILE=1
686
 
            GRASS_EXPORT_FILE_SUFFIX='${LIB_VER}.exp'
687
 
 
688
 
            # Check to enable 64-bit flags for compiler/linker
689
 
            if test "$do64bit" = "yes" ; then
690
 
                if test "$GCC" = "yes" ; then
691
 
                    AC_MSG_WARN("64bit mode not supported with GCC on $system")
692
 
                else 
693
 
                    do64bit_ok=yes
694
 
                    EXTRA_CFLAGS="-q64"
695
 
                    LDFLAGS="-q64"
696
 
                    RANLIB="${RANLIB} -X64"
697
 
                    AR="${AR} -X64"
698
 
                    SHLIB_LD_FLAGS="-b64"
699
 
                fi
700
 
            fi
701
 
            #SHLIB_LD="${SRCDIR}/ldAix /bin/ld -bhalt:4 -bM:SRE -bE:lib.exp -H512 -T512 -bnoentry ${SHLIB_LD_FLAGS}"
702
 
            SHLIB_LD="$CC -shared"
703
 
 
704
 
            # On AIX <=v4 systems, libbsd.a has to be linked in to support
705
 
            # non-blocking file IO.  This library has to be linked in after
706
 
            # the MATH_LIBS or it breaks the pow() function.  The way to
707
 
            # insure proper sequencing, is to add it to the tail of MATH_LIBS.
708
 
            # This library also supplies gettimeofday.
709
 
            #
710
 
            # AIX does not have a timezone field in struct tm. When the AIX
711
 
            # bsd library is used, the timezone global and the gettimeofday
712
 
            # methods are to be avoided for timezone deduction instead, we
713
 
            # deduce the timezone by comparing the localtime result on a
714
 
            # known GMT value.
715
 
 
716
 
            AC_CHECK_LIB(bsd, gettimeofday, libbsd=yes, libbsd=no)
717
 
            if test $libbsd = yes; then
718
 
                MATH_LIBS="$MATH_LIBS -lbsd"
719
 
                AC_DEFINE(USE_DELTA_FOR_TZ)
720
 
            fi
721
 
            ;;
722
 
        BeOS*)
723
 
            SHLIB_CFLAGS="-fPIC"
724
 
            SHLIB_LD="${CC} -nostart"
725
 
            SHLIB_LD_LIBS='${LIBS}'
726
 
            SHLIB_SUFFIX=".so"
727
 
            LDFLAGS=""
728
 
 
729
 
            #-----------------------------------------------------------
730
 
            # Check for inet_ntoa in -lbind, for BeOS (which also needs
731
 
            # -lsocket, even if the network functions are in -lnet which
732
 
            # is always linked to, for compatibility.
733
 
            #-----------------------------------------------------------
734
 
            AC_CHECK_LIB(bind, inet_ntoa, [LIBS="$LIBS -lbind -lsocket"])
735
 
            ;;
736
 
        BSD/OS-2.1*|BSD/OS-3*)
737
 
            SHLIB_CFLAGS=""
738
 
            SHLIB_LD="shlicc -r"
739
 
            SHLIB_LD_LIBS='${LIBS}'
740
 
            SHLIB_SUFFIX=".so"
741
 
            LDFLAGS=""
742
 
            CC_SEARCH_FLAGS=""
743
 
            LD_SEARCH_FLAGS=""
744
 
            ;;
745
 
        BSD/OS-4.*)
746
 
            SHLIB_CFLAGS="-export-dynamic -fPIC"
747
 
            SHLIB_LD="cc -shared"
748
 
            SHLIB_LD_LIBS='${LIBS}'
749
 
            SHLIB_SUFFIX=".so"
750
 
            LDFLAGS="-export-dynamic"
751
 
            CC_SEARCH_FLAGS=""
752
 
            LD_SEARCH_FLAGS=""
753
 
            ;;
754
 
        dgux*)
755
 
            SHLIB_CFLAGS="-K PIC"
756
 
            SHLIB_LD="cc -G"
757
 
            SHLIB_LD_LIBS=""
758
 
            SHLIB_SUFFIX=".so"
759
 
            LDFLAGS=""
760
 
            CC_SEARCH_FLAGS=""
761
 
            LD_SEARCH_FLAGS=""
762
 
            ;;
763
 
        HP-UX-*.11.*)
764
 
            # Use updated header definitions where possible
765
 
            AC_DEFINE(_XOPEN_SOURCE)          # Use the XOPEN network library
766
 
            AC_DEFINE(_XOPEN_SOURCE_EXTENDED) # Use the XOPEN network library
767
 
            LIBS="$LIBS -lxnet"               # Use the XOPEN network library
768
 
 
769
 
            SHLIB_SUFFIX=".sl"
770
 
            AC_CHECK_LIB(dld, shl_load, shared_ok=yes, shared_ok=no)
771
 
            if test "$shared_ok" = yes; then
772
 
                SHLIB_CFLAGS="+z"
773
 
                SHLIB_LD="ld -b"
774
 
                SHLIB_LD_LIBS='${LIBS}'
775
 
                LDFLAGS="-Wl,-E"
776
 
                CC_SEARCH_FLAGS='-Wl,+s,+b,${LIB_RUNTIME_DIR}:.'
777
 
                LD_SEARCH_FLAGS='+s +b ${LIB_RUNTIME_DIR}:.'
778
 
                LD_LIBRARY_PATH_VAR="SHLIB_PATH"
779
 
            fi
780
 
 
781
 
            # Users may want PA-RISC 1.1/2.0 portable code - needs HP cc
782
 
            #EXTRA_CFLAGS="+DAportable"
783
 
 
784
 
            # Check to enable 64-bit flags for compiler/linker
785
 
            if test "$do64bit" = "yes" ; then
786
 
                if test "$GCC" = "yes" ; then
787
 
                    hpux_arch=`gcc -dumpmachine`
788
 
                    case $hpux_arch in
789
 
                        hppa64*)
790
 
                            # 64-bit gcc in use.  Fix flags for GNU ld.
791
 
                            do64bit_ok=yes
792
 
                            SHLIB_LD="gcc -shared"
793
 
                            SHLIB_LD_LIBS=""
794
 
                            LD_SEARCH_FLAGS=''
795
 
                            CC_SEARCH_FLAGS=''
796
 
                            ;;
797
 
                        *)
798
 
                            AC_MSG_WARN("64bit mode not supported with GCC on $system")
799
 
                            ;;
800
 
                    esac
801
 
                else
802
 
                    do64bit_ok=yes
803
 
                    if test "`uname -m`" = "ia64" ; then
804
 
                        EXTRA_CFLAGS="+DD64"
805
 
                        LDFLAGS="+DD64 $LDFLAGS"
806
 
                    else
807
 
                        EXTRA_CFLAGS="+DA2.0W"
808
 
                        LDFLAGS="+DA2.0W $LDFLAGS"
809
 
                    fi
810
 
                fi
811
 
            fi
812
 
            ;;
813
 
        HP-UX-*.08.*|HP-UX-*.09.*|HP-UX-*.10.*)
814
 
            SHLIB_SUFFIX=".sl"
815
 
            AC_CHECK_LIB(dld, shl_load, shared_ok=yes, shared_ok=no)
816
 
            if test "$shared_ok" = yes; then
817
 
                SHLIB_CFLAGS="+z"
818
 
                SHLIB_LD="ld -b"
819
 
                SHLIB_LD_LIBS=""
820
 
                LDFLAGS="-Wl,-E"
821
 
                CC_SEARCH_FLAGS='-Wl,+s,+b,${LIB_RUNTIME_DIR}:.'
822
 
                LD_SEARCH_FLAGS='+s +b ${LIB_RUNTIME_DIR}:.'
823
 
                LD_LIBRARY_PATH_VAR="SHLIB_PATH"
824
 
            fi
825
 
            ;;
826
 
        IRIX-4.*)
827
 
            SHLIB_CFLAGS="-G 0"
828
 
            SHLIB_SUFFIX=".a"
829
 
            SHLIB_LD="echo tclLdAout $CC \{$SHLIB_CFLAGS\} | `pwd`/tclsh -r -G 0"
830
 
            SHLIB_LD_LIBS='${LIBS}'
831
 
            LDFLAGS="-Wl,-D,08000000"
832
 
            CC_SEARCH_FLAGS='-L${LIB_RUNTIME_DIR}'
833
 
            LD_SEARCH_FLAGS=${CC_SEARCH_FLAGS}
834
 
            SHARED_LIB_SUFFIX='${LIB_VER}.a'
835
 
            ;;
836
 
        IRIX-5.*)
837
 
            SHLIB_CFLAGS=""
838
 
            SHLIB_LD="ld -shared -rdata_shared"
839
 
            SHLIB_LD_LIBS='${LIBS}'
840
 
            SHLIB_SUFFIX=".so"
841
 
            CC_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}'
842
 
            LD_SEARCH_FLAGS='-rpath ${LIB_RUNTIME_DIR}'
843
 
            EXTRA_CFLAGS=""
844
 
            LDFLAGS=""
845
 
            ;;
846
 
        IRIX-6.2)
847
 
            SHLIB_CFLAGS=""
848
 
            SHLIB_LD="ld -shared -rdata_shared"
849
 
            SHLIB_LD_LIBS='${LIBS}'
850
 
            SHLIB_SUFFIX=".so"
851
 
            CC_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}'
852
 
            LD_SEARCH_FLAGS='-rpath ${LIB_RUNTIME_DIR}'
853
 
            ;;
854
 
        IRIX-6.*|IRIX64-6.5*)
855
 
            SHLIB_CFLAGS=""
856
 
            SHLIB_LD="ld -n32 -shared -rdata_shared"
857
 
            SHLIB_LD_LIBS='${LIBS}'
858
 
            SHLIB_SUFFIX=".so"
859
 
            CC_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}'
860
 
            LD_SEARCH_FLAGS='-rpath ${LIB_RUNTIME_DIR}'
861
 
            if test "$GCC" = "yes" ; then
862
 
                EXTRA_CFLAGS="-mabi=n32"
863
 
                LDFLAGS="-mabi=n32"
864
 
            else
865
 
                case $system in
866
 
                    IRIX-6.3)
867
 
                        # Use to build 6.2 compatible binaries on 6.3.
868
 
                        EXTRA_CFLAGS="-n32 -D_OLD_TERMIOS"
869
 
                        ;;
870
 
                    *)
871
 
                        EXTRA_CFLAGS="-n32"
872
 
                        ;;
873
 
                esac
874
 
                LDFLAGS="-n32"
875
 
            fi
876
 
            ;;
877
 
        IRIX64-6.*)
878
 
            SHLIB_CFLAGS=""
879
 
            SHLIB_LD="ld -n32 -shared -rdata_shared"
880
 
            SHLIB_LD_LIBS='${LIBS}'
881
 
            SHLIB_SUFFIX=".so"
882
 
            LDFLAGS=""
883
 
            CC_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}'
884
 
            LD_SEARCH_FLAGS='-rpath ${LIB_RUNTIME_DIR}'
885
 
 
886
 
            # Check to enable 64-bit flags for compiler/linker
887
 
 
888
 
            if test "$do64bit" = "yes" ; then
889
 
                if test "$GCC" = "yes" ; then
890
 
                    AC_MSG_WARN([64bit mode not supported by gcc])
891
 
                else
892
 
                    do64bit_ok=yes
893
 
                    SHLIB_LD="ld -64 -shared -rdata_shared"
894
 
                    EXTRA_CFLAGS="-64"
895
 
                    LDFLAGS="-64"
896
 
                fi
897
 
            fi
898
 
            ;;
899
 
        Linux*)
900
 
            SHLIB_CFLAGS="-fPIC"
901
 
            SHLIB_LD_LIBS='${LIBS}'
902
 
            SHLIB_SUFFIX=".so"
903
 
 
904
 
            CFLAGS_OPTIMIZE=-O2
905
 
            # egcs-2.91.66 on Redhat Linux 6.0 generates lots of warnings 
906
 
            # when you inline the string and math operations.  Turn this off to
907
 
            # get rid of the warnings.
908
 
            #CFLAGS_OPTIMIZE="${CFLAGS_OPTIMIZE} -D__NO_STRING_INLINES -D__NO_MATH_INLINES"
909
 
 
910
 
            if test "$have_dl" = yes; then
911
 
                SHLIB_LD="${CC} -shared"
912
 
                LDFLAGS="-Wl,--export-dynamic"
913
 
                CC_SEARCH_FLAGS='-Wl,-rpath-link,${LIB_RUNTIME_DIR}'
914
 
                LD_SEARCH_FLAGS=${CC_SEARCH_FLAGS}
915
 
            else
916
 
                AC_CHECK_HEADER(dld.h, [
917
 
                    SHLIB_LD="ld -shared"
918
 
                    LDFLAGS=""
919
 
                    CC_SEARCH_FLAGS=""
920
 
                    LD_SEARCH_FLAGS=""])
921
 
            fi
922
 
            if test "`uname -m`" = "alpha" ; then
923
 
                EXTRA_CFLAGS="-mieee"
924
 
            fi
925
 
 
926
 
            # The combo of gcc + glibc has a bug related
927
 
            # to inlining of functions like strtod(). The
928
 
            # -fno-builtin flag should address this problem
929
 
            # but it does not work. The -fno-inline flag
930
 
            # is kind of overkill but it works.
931
 
            # Disable inlining only when one of the
932
 
            # files in compat/*.c is being linked in.
933
 
            if test x"${USE_COMPAT}" != x ; then
934
 
                EXTRA_CFLAGS="${EXTRA_CFLAGS} -fno-inline"
935
 
            fi
936
 
 
937
 
            # XIM peeking works under XFree86.
938
 
            AC_DEFINE(PEEK_XCLOSEIM)
939
 
 
940
 
            ;;
941
 
        GNU*)
942
 
            SHLIB_CFLAGS="-fPIC"
943
 
            SHLIB_LD_LIBS='${LIBS}'
944
 
            SHLIB_SUFFIX=".so"
945
 
 
946
 
            if test "$have_dl" = yes; then
947
 
                SHLIB_LD="${CC} -shared"
948
 
                LDFLAGS="-Wl,--export-dynamic"
949
 
                CC_SEARCH_FLAGS=""
950
 
                LD_SEARCH_FLAGS=""
951
 
            else
952
 
                AC_CHECK_HEADER(dld.h, [
953
 
                    SHLIB_LD="ld -shared"
954
 
                    LDFLAGS=""
955
 
                    CC_SEARCH_FLAGS=""
956
 
                    LD_SEARCH_FLAGS=""])
957
 
            fi
958
 
            if test "`uname -m`" = "alpha" ; then
959
 
                EXTRA_CFLAGS="-mieee"
960
 
            fi
961
 
            ;;
962
 
        CYGWIN*)
963
 
            SHLIB_CFLAGS=""
964
 
            SHLIB_LD_LIBS='${LIBS}'
 
487
 
 
488
    case $host in
 
489
        *-linux-* | *-gnu* | *-kfreebsd*-gnu)
 
490
            SHLIB_CFLAGS="-fPIC"
 
491
            SHLIB_LD_FLAGS=""
 
492
            SHLIB_SUFFIX=".so"
 
493
            SHLIB_LD="${CC} -shared"
 
494
            LDFLAGS="-Wl,--export-dynamic"
 
495
            LD_SEARCH_FLAGS='-Wl,-rpath-link,${LIB_RUNTIME_DIR}'
 
496
            LD_LIBRARY_PATH_VAR="LD_LIBRARY_PATH"
 
497
            ;;
 
498
        *-pc-cygwin)
965
499
            SHLIB_SUFFIX=".dll"
966
 
 
967
500
            SHLIB_LD="${CC} -shared"
968
501
            LDFLAGS="-Wl,--export-dynamic"
969
 
            CC_SEARCH_FLAGS=""
970
 
            LD_SEARCH_FLAGS=""
971
502
            LD_LIBRARY_PATH_VAR="PATH"
972
503
            ;;
973
 
        MINGW* | MSYS*)
974
 
            SHLIB_CFLAGS=""
975
 
            SHLIB_LD_LIBS='${LIBS}'
 
504
        *-pc-mingw32 | *-pc-msys)
976
505
            SHLIB_SUFFIX=".dll"
977
 
 
978
506
            SHLIB_LD="${CC} -shared"
979
507
            LDFLAGS="-Wl,--export-dynamic,--enable-runtime-pseudo-reloc"
980
 
            CC_SEARCH_FLAGS=""
981
 
            LD_SEARCH_FLAGS=""
982
508
            LD_LIBRARY_PATH_VAR="PATH"
983
509
            ;;
984
 
        MP-RAS-02*)
985
 
            SHLIB_CFLAGS="-K PIC"
986
 
            SHLIB_LD="cc -G"
987
 
            SHLIB_LD_LIBS=""
988
 
            SHLIB_SUFFIX=".so"
989
 
            LDFLAGS=""
990
 
            CC_SEARCH_FLAGS=""
991
 
            LD_SEARCH_FLAGS=""
992
 
            ;;
993
 
        MP-RAS-*)
994
 
            SHLIB_CFLAGS="-K PIC"
995
 
            SHLIB_LD="cc -G"
996
 
            SHLIB_LD_LIBS=""
997
 
            SHLIB_SUFFIX=".so"
998
 
            LDFLAGS="-Wl,-Bexport"
999
 
            CC_SEARCH_FLAGS=""
1000
 
            LD_SEARCH_FLAGS=""
1001
 
            ;;
1002
 
        NetBSD-*)
 
510
        *-apple-darwin*)
 
511
            SHLIB_CFLAGS="-fno-common"
 
512
            SHLIB_SUFFIX=".dylib"
 
513
            SHLIB_LD="cc -dynamiclib -compatibility_version \${GRASS_VERSION_MAJOR}.\${GRASS_VERSION_MINOR} -current_version \${GRASS_VERSION_MAJOR}.\${GRASS_VERSION_MINOR} -install_name \${INST_DIR}/lib/lib\${LIB_NAME}\${SHLIB_SUFFIX}"
 
514
            LD_LIBRARY_PATH_VAR="DYLD_LIBRARY_PATH"
 
515
            ;;
 
516
        *-sun-solaris*)
 
517
            # Note: If _REENTRANT isn't defined, then Solaris
 
518
            # won't define thread-safe library routines.
 
519
            AC_DEFINE(_REENTRANT)
 
520
            AC_DEFINE(_POSIX_PTHREAD_SEMANTICS)
 
521
            # Note: need the LIBS below, otherwise Tk won't find Tcl's
 
522
            # symbols when dynamically loaded into tclsh.
 
523
            if test "$GCC" = "yes" ; then
 
524
                SHLIB_CFLAGS="-fPIC"
 
525
                SHLIB_LD="$CC -shared"
 
526
                LD_SEARCH_FLAGS='-Wl,-R,${LIB_RUNTIME_DIR}'
 
527
            else
 
528
                SHLIB_CFLAGS="-KPIC"
 
529
                SHLIB_LD="/usr/ccs/bin/ld -G -z text"
 
530
                LD_SEARCH_FLAGS='-R ${LIB_RUNTIME_DIR}'
 
531
            fi
 
532
            SHLIB_SUFFIX=".so"
 
533
            LD_LIBRARY_PATH_VAR="LD_LIBRARY_PATH"
 
534
            ;;
 
535
        *-solaris2*)
 
536
            # Note: Solaris is as of 2010 Oracle Solaris, not Sun Solaris
 
537
            #       Oracle Solaris derives from Solaris 2 
 
538
            #       derives from SunOS 5 
 
539
            #       derives from UNIX System V Release 4
 
540
            # Note: If _REENTRANT isn't defined, then Solaris
 
541
            # won't define thread-safe library routines.
 
542
            AC_DEFINE(_REENTRANT)
 
543
            AC_DEFINE(_POSIX_PTHREAD_SEMANTICS)
 
544
            # Note: need the LIBS below, otherwise Tk won't find Tcl's
 
545
            # symbols when dynamically loaded into tclsh.
 
546
            if test "$GCC" = "yes" ; then
 
547
                SHLIB_CFLAGS="-fPIC"
 
548
                SHLIB_LD="$CC -shared"
 
549
                LD_SEARCH_FLAGS='-Wl,-R,${LIB_RUNTIME_DIR}'
 
550
            else
 
551
                SHLIB_CFLAGS="-KPIC"
 
552
                SHLIB_LD="/usr/ccs/bin/ld -G -z text"
 
553
                LD_SEARCH_FLAGS='-R ${LIB_RUNTIME_DIR}'
 
554
            fi
 
555
            SHLIB_SUFFIX=".so"
 
556
            LD_LIBRARY_PATH_VAR="LD_LIBRARY_PATH"
 
557
            ;;
 
558
        *-freebsd*)
 
559
            # NOTE: only FreeBSD 4+ is supported
 
560
            # FreeBSD 3.* and greater have ELF.
 
561
            SHLIB_CFLAGS="-fPIC"
 
562
            #SHLIB_LD="ld -Bshareable -x"
 
563
            SHLIB_LD="${CC} -shared"
 
564
            SHLIB_SUFFIX=".so"
 
565
            LDFLAGS="-export-dynamic"
 
566
            #LD_SEARCH_FLAGS='-rpath ${LIB_RUNTIME_DIR}'
 
567
            LD_SEARCH_FLAGS='-Wl,-rpath-link,${LIB_RUNTIME_DIR}'
 
568
            # TODO: add optional pthread support with any combination of: 
 
569
            # CFLAGS="$CFLAGS -pthread"
 
570
            # LDFLAGS="$LDFLAGS -lpthread"
 
571
            # AC_DEFINE(_REENTRANT)
 
572
            # AC_DEFINE(_POSIX_PTHREAD_SEMANTICS)
 
573
            ;;
 
574
        *-netbsd*)
1003
575
            # NetBSD has ELF.
1004
576
            SHLIB_CFLAGS="-fPIC"
1005
 
            SHLIB_LD="ld -Bshareable -x"
 
577
            SHLIB_LD="${CC} -shared"
1006
578
            SHLIB_LD_LIBS="${LIBS}"
1007
 
            SHLIB_SUFFIX=".so"
1008
579
            LDFLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR} -export-dynamic'
1009
 
            CC_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}'
1010
 
            LD_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}'
1011
 
            if test "${GRASS_THREADS}" = "1" ; then
1012
 
                # The -pthread needs to go in the CFLAGS, not LIBS
1013
 
                LIBS=`echo $LIBS | sed s/-pthread//`
1014
 
                EXTRA_CFLAGS="-pthread"
1015
 
                LDFLAGS="$LDFLAGS -pthread"
1016
 
            fi
1017
 
            # NetBSD doesn't handle version numbers with dots.
1018
 
            UNSHARED_LIB_SUFFIX='${GRASS_TRIM_DOTS}.a'
1019
 
            SHARED_LIB_SUFFIX='${GRASS_TRIM_DOTS}.so',
1020
 
            GRASS_LIB_VERSIONS_OK=nodots
1021
 
            ;;
1022
 
        OpenBSD-*)
1023
 
            SHLIB_LD="${CC} -shared"
1024
 
            SHLIB_LD_LIBS='${LIBS}'
1025
 
            SHLIB_SUFFIX=".so"
1026
 
            LDFLAGS=""
1027
 
            CC_SEARCH_FLAGS=""
1028
 
            LD_SEARCH_FLAGS=""
1029
 
            AC_MSG_CHECKING(for ELF)
1030
 
            AC_EGREP_CPP(yes, [
1031
 
#ifdef __ELF__
1032
 
        yes
1033
 
#endif
1034
 
            ],
1035
 
                [AC_MSG_RESULT(yes)
1036
 
                SHARED_LIB_SUFFIX='${GRASS_TRIM_DOTS}.so.1.0'],
1037
 
                [AC_MSG_RESULT(no)
1038
 
                SHARED_LIB_SUFFIX='${GRASS_TRIM_DOTS}.so.1.0']
1039
 
            )
1040
 
 
1041
 
            # OpenBSD doesn't do version numbers with dots.
1042
 
            UNSHARED_LIB_SUFFIX='${GRASS_TRIM_DOTS}.a'
1043
 
            GRASS_LIB_VERSIONS_OK=nodots
1044
 
            ;;
1045
 
        FreeBSD-[[1-2]].*)
1046
 
            # Not available on all versions:  check for include file.
1047
 
            AC_CHECK_HEADER(dlfcn.h, [
1048
 
                SHLIB_CFLAGS="-fPIC"
1049
 
                SHLIB_LD="ld -Bshareable -x"
1050
 
                SHLIB_LD_LIBS=""
1051
 
                SHLIB_SUFFIX=".so"
1052
 
                LDFLAGS=""
1053
 
                CC_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}'
1054
 
                LD_SEARCH_FLAGS='-rpath ${LIB_RUNTIME_DIR}'
1055
 
                AC_MSG_CHECKING(for ELF)
1056
 
                AC_EGREP_CPP(yes, [
1057
 
#ifdef __ELF__
1058
 
        yes
1059
 
#endif
1060
 
                ],
1061
 
                    AC_MSG_RESULT(yes)
1062
 
                    SHARED_LIB_SUFFIX='${GRASS_TRIM_DOTS}.so',
1063
 
                    AC_MSG_RESULT(no)
1064
 
                    SHARED_LIB_SUFFIX='${GRASS_TRIM_DOTS}.so.1.0'
1065
 
                )
1066
 
            ], [
1067
 
                SHLIB_CFLAGS=""
1068
 
                SHLIB_LD="echo tclLdAout $CC \{$SHLIB_CFLAGS\} | `pwd`/tclsh -r"
1069
 
                SHLIB_LD_LIBS='${LIBS}'
1070
 
                SHLIB_SUFFIX=".a"
1071
 
                LDFLAGS=""
1072
 
                CC_SEARCH_FLAGS='-L${LIB_RUNTIME_DIR}'
1073
 
                LD_SEARCH_FLAGS=${CC_SEARCH_FLAGS}
1074
 
                SHARED_LIB_SUFFIX='${GRASS_TRIM_DOTS}.a'
1075
 
            ])
1076
 
            UNSHARED_LIB_SUFFIX='${GRASS_TRIM_DOTS}.a'
1077
 
            GRASS_LIB_VERSIONS_OK=nodots
1078
 
            ;;
1079
 
        FreeBSD-*)
1080
 
            # FreeBSD 3.* and greater have ELF.
1081
 
            SHLIB_CFLAGS="-fPIC"
1082
 
            SHLIB_LD="ld -Bshareable -x"
1083
 
            SHLIB_LD_LIBS='${LIBS}'
1084
 
            SHLIB_SUFFIX=".so"
1085
 
            LDFLAGS="-export-dynamic"
1086
 
            CC_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}'
1087
 
            LD_SEARCH_FLAGS='-rpath ${LIB_RUNTIME_DIR}'
1088
 
            if test "${GRASS_THREADS}" = "1" ; then
1089
 
                # The -pthread needs to go in the CFLAGS, not LIBS
1090
 
                LIBS=`echo $LIBS | sed s/-pthread//`
1091
 
                EXTRA_CFLAGS="-pthread"
1092
 
                LDFLAGS="$LDFLAGS -pthread"
1093
 
            fi
1094
 
            case $system in
1095
 
            FreeBSD-3.*)
1096
 
                # FreeBSD-3 doesn't handle version numbers with dots.
1097
 
                UNSHARED_LIB_SUFFIX='${GRASS_TRIM_DOTS}.a'
1098
 
                SHARED_LIB_SUFFIX='${GRASS_TRIM_DOTS}.so'
1099
 
                GRASS_LIB_VERSIONS_OK=nodots
1100
 
                ;;
1101
 
            esac
1102
 
            ;;
1103
 
        Rhapsody-*|Darwin-*)
1104
 
            SHLIB_CFLAGS="-fno-common"
1105
 
            SHLIB_LD="cc -dynamiclib -compatibility_version \${GRASS_VERSION_MAJOR}.\${GRASS_VERSION_MINOR} -current_version \${GRASS_VERSION_MAJOR}.\${GRASS_VERSION_MINOR} -install_name \${INST_DIR}/lib/lib\${LIB_NAME}\${SHLIB_SUFFIX}"
1106
 
            GRASS_SHLIB_LD_EXTRAS=""
1107
 
            SHLIB_LD_LIBS='${LIBS}'
1108
 
            SHLIB_SUFFIX=".dylib"
1109
 
            PLAT_OBJS=""
1110
 
            CC_SEARCH_FLAGS=""
1111
 
            LD_SEARCH_FLAGS=""
1112
 
            CFLAGS_OPTIMIZE="-Os"
1113
 
            LD_LIBRARY_PATH_VAR="DYLD_LIBRARY_PATH"
1114
 
            # for compatibility with autoconf vers 2.13 :
1115
 
            HACK=""
1116
 
            EXTRA_CFLAGS=""
1117
 
            LIBS="$LIBS"
1118
 
            ;;
1119
 
        NEXTSTEP-*)
1120
 
            SHLIB_CFLAGS=""
1121
 
            SHLIB_LD="cc -nostdlib -r"
1122
 
            SHLIB_LD_LIBS=""
1123
 
            SHLIB_SUFFIX=".so"
1124
 
            LDFLAGS=""
1125
 
            CC_SEARCH_FLAGS=""
1126
 
            LD_SEARCH_FLAGS=""
1127
 
            ;;
1128
 
        OS/390-*)
1129
 
            CFLAGS_OPTIMIZE=""      # Optimizer is buggy
1130
 
            AC_DEFINE(_OE_SOCKETS)  # needed in sys/socket.h
1131
 
            ;;      
1132
 
        OSF1-1.0|OSF1-1.1|OSF1-1.2)
1133
 
            # OSF/1 1.[012] from OSF, and derivatives, including Paragon OSF/1
1134
 
            SHLIB_CFLAGS=""
1135
 
            # Hack: make package name same as library name
1136
 
            SHLIB_LD='ld -R -export $@:'
1137
 
            SHLIB_LD_LIBS=""
1138
 
            SHLIB_SUFFIX=".so"
1139
 
            LDFLAGS=""
1140
 
            CC_SEARCH_FLAGS=""
1141
 
            LD_SEARCH_FLAGS=""
1142
 
            ;;
1143
 
        OSF1-1.*)
1144
 
            # OSF/1 1.3 from OSF using ELF, and derivatives, including AD2
1145
 
            SHLIB_CFLAGS="-fPIC"
1146
 
            if test "$SHARED_BUILD" = "1" ; then
1147
 
                SHLIB_LD="ld -shared"
1148
 
            else
1149
 
                SHLIB_LD="ld -non_shared"
1150
 
            fi
1151
 
            SHLIB_LD_LIBS=""
1152
 
            SHLIB_SUFFIX=".so"
1153
 
            LDFLAGS=""
1154
 
            CC_SEARCH_FLAGS=""
1155
 
            LD_SEARCH_FLAGS=""
1156
 
            ;;
1157
 
        OSF1-V*)
1158
 
            # Digital OSF/1
1159
 
            SHLIB_CFLAGS=""
1160
 
            if test "$SHARED_BUILD" = "1" ; then
1161
 
                SHLIB_LD='ld -shared -expect_unresolved "*"'
1162
 
            else
1163
 
                SHLIB_LD='ld -non_shared -expect_unresolved "*"'
1164
 
            fi
1165
 
            SHLIB_LD_LIBS=""
1166
 
            SHLIB_SUFFIX=".so"
1167
 
            LDFLAGS=""
1168
 
            CC_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}'
1169
 
            LD_SEARCH_FLAGS='-rpath ${LIB_RUNTIME_DIR}'
1170
 
            if test "$GCC" = "yes" ; then
1171
 
                EXTRA_CFLAGS="-mieee"
1172
 
            else
1173
 
                EXTRA_CFLAGS="-DHAVE_TZSET -std1 -ieee"
1174
 
            fi
1175
 
            # see pthread_intro(3) for pthread support on osf1, k.furukawa
1176
 
            if test "${GRASS_THREADS}" = "1" ; then
1177
 
                EXTRA_CFLAGS="${EXTRA_CFLAGS} -DHAVE_PTHREAD_ATTR_SETSTACKSIZE"
1178
 
                EXTRA_CFLAGS="${EXTRA_CFLAGS} -DGRASS_THREAD_STACK_MIN=PTHREAD_STACK_MIN*64"
1179
 
                LIBS=`echo $LIBS | sed s/-lpthreads//`
1180
 
                if test "$GCC" = "yes" ; then
1181
 
                    LIBS="$LIBS -lpthread -lmach -lexc"
1182
 
                else
1183
 
                    EXTRA_CFLAGS="${EXTRA_CFLAGS} -pthread"
1184
 
                    LDFLAGS="-pthread"
1185
 
                fi
1186
 
            fi
1187
 
 
1188
 
            ;;
1189
 
        QNX-6*)
1190
 
            # QNX RTP
1191
 
            # This may work for all QNX, but it was only reported for v6.
1192
 
            SHLIB_CFLAGS="-fPIC"
1193
 
            SHLIB_LD="ld -Bshareable -x"
1194
 
            SHLIB_LD_LIBS=""
1195
 
            SHLIB_SUFFIX=".so"
1196
 
            LDFLAGS=""
1197
 
            CC_SEARCH_FLAGS=""
1198
 
            LD_SEARCH_FLAGS=""
1199
 
            ;;
1200
 
        RISCos-*)
1201
 
            SHLIB_CFLAGS="-G 0"
1202
 
            SHLIB_LD="echo tclLdAout $CC \{$SHLIB_CFLAGS\} | `pwd`/tclsh -r -G 0"
1203
 
            SHLIB_LD_LIBS='${LIBS}'
1204
 
            SHLIB_SUFFIX=".a"
1205
 
            LDFLAGS="-Wl,-D,08000000"
1206
 
            CC_SEARCH_FLAGS='-L${LIB_RUNTIME_DIR}'
1207
 
            LD_SEARCH_FLAGS=${CC_SEARCH_FLAGS}
1208
 
            ;;
1209
 
        SCO_SV-3.2*)
1210
 
            # Note, dlopen is available only on SCO 3.2.5 and greater. However,
1211
 
            # this test works, since "uname -s" was non-standard in 3.2.4 and
1212
 
            # below.
1213
 
            if test "$GCC" = "yes" ; then
1214
 
                SHLIB_CFLAGS="-fPIC -melf"
1215
 
                LDFLAGS="-melf -Wl,-Bexport"
1216
 
            else
1217
 
                SHLIB_CFLAGS="-Kpic -belf"
1218
 
                LDFLAGS="-belf -Wl,-Bexport"
1219
 
            fi
1220
 
            SHLIB_LD="ld -G"
1221
 
            SHLIB_LD_LIBS=""
1222
 
            SHLIB_SUFFIX=".so"
1223
 
            CC_SEARCH_FLAGS=""
1224
 
            LD_SEARCH_FLAGS=""
1225
 
            ;;
1226
 
        SINIX*5.4*)
1227
 
            SHLIB_CFLAGS="-K PIC"
1228
 
            SHLIB_LD="cc -G"
1229
 
            SHLIB_LD_LIBS=""
1230
 
            SHLIB_SUFFIX=".so"
1231
 
            LDFLAGS=""
1232
 
            CC_SEARCH_FLAGS=""
1233
 
            LD_SEARCH_FLAGS=""
1234
 
            ;;
1235
 
        SunOS-4*)
1236
 
            SHLIB_CFLAGS="-PIC"
1237
 
            SHLIB_LD="ld"
1238
 
            SHLIB_LD_LIBS=""
1239
 
            SHLIB_SUFFIX=".so"
1240
 
            LDFLAGS=""
1241
 
            CC_SEARCH_FLAGS='-L${LIB_RUNTIME_DIR}'
1242
 
            LD_SEARCH_FLAGS=${CC_SEARCH_FLAGS}
1243
 
 
1244
 
            # SunOS can't handle version numbers with dots in them in library
1245
 
            # specs, like -ltcl7.5, so use -ltcl75 instead.  Also, it
1246
 
            # requires an extra version number at the end of .so file names.
1247
 
            # So, the library has to have a name like libtcl75.so.1.0
1248
 
 
1249
 
            SHARED_LIB_SUFFIX='${GRASS_TRIM_DOTS}.so.1.0'
1250
 
            UNSHARED_LIB_SUFFIX='${GRASS_TRIM_DOTS}.a'
1251
 
            GRASS_LIB_VERSIONS_OK=nodots
1252
 
            ;;
1253
 
        SunOS-5.[[0-6]].*)
1254
 
 
1255
 
            # Note: If _REENTRANT isn't defined, then Solaris
1256
 
            # won't define thread-safe library routines.
1257
 
 
1258
 
            AC_DEFINE(_REENTRANT)
1259
 
            AC_DEFINE(_POSIX_PTHREAD_SEMANTICS)
1260
 
 
1261
 
            # Note: need the LIBS below, otherwise Tk won't find Tcl's
1262
 
            # symbols when dynamically loaded into tclsh.
1263
 
 
1264
 
            SHLIB_LD_LIBS='${LIBS}'
1265
 
            SHLIB_SUFFIX=".so"
1266
 
            LDFLAGS=""
1267
 
            if test "$GCC" = "yes" ; then
1268
 
                SHLIB_CFLAGS="-fPIC"
1269
 
                SHLIB_LD="$CC -shared"
1270
 
                CC_SEARCH_FLAGS='-Wl,-R,${LIB_RUNTIME_DIR}'
1271
 
                LD_SEARCH_FLAGS=${CC_SEARCH_FLAGS}
1272
 
            else
1273
 
                SHLIB_CFLAGS="-KPIC"
1274
 
                SHLIB_LD="/usr/ccs/bin/ld -G -z text"
1275
 
                CC_SEARCH_FLAGS='-R ${LIB_RUNTIME_DIR}'
1276
 
                LD_SEARCH_FLAGS=${CC_SEARCH_FLAGS}
1277
 
            fi
1278
 
            ;;
1279
 
        SunOS-5*)
1280
 
 
1281
 
            # Note: If _REENTRANT isn't defined, then Solaris
1282
 
            # won't define thread-safe library routines.
1283
 
 
1284
 
            AC_DEFINE(_REENTRANT)
1285
 
            AC_DEFINE(_POSIX_PTHREAD_SEMANTICS)
1286
 
 
1287
 
            LDFLAGS=""
1288
 
    
1289
 
            # Check to enable 64-bit flags for compiler/linker
1290
 
            if test "$do64bit" = "yes" ; then
1291
 
                arch=`isainfo`
1292
 
                if test "$arch" = "sparcv9 sparc" ; then
1293
 
                        if test "$GCC" = "yes" ; then
1294
 
                            AC_MSG_WARN("64bit mode not supported with GCC on $system")
1295
 
                        else
1296
 
                            SHLIB_CFLAGS="-KPIC"
1297
 
                            do64bit_ok=yes
1298
 
                            if test "$do64bitVIS" = "yes" ; then
1299
 
                                EXTRA_CFLAGS="-xarch=v9a"
1300
 
                                LDFLAGS="-xarch=v9a"
1301
 
                            else
1302
 
                                EXTRA_CFLAGS="-xarch=v9"
1303
 
                                LDFLAGS="-xarch=v9"
1304
 
                            fi
1305
 
                        fi
1306
 
                else
1307
 
                    AC_MSG_WARN("64bit mode only supported sparcv9 system")
1308
 
                fi
1309
 
            fi
1310
 
            
1311
 
            # Note: need the LIBS below, otherwise Tk won't find Tcl's
1312
 
            # symbols when dynamically loaded into tclsh.
1313
 
 
1314
 
            SHLIB_LD_LIBS='${LIBS}'
1315
 
            SHLIB_SUFFIX=".so"
1316
 
            if test "$GCC" = "yes" ; then
1317
 
                SHLIB_CFLAGS="-fPIC"
1318
 
                SHLIB_LD="$CC -shared"
1319
 
                CC_SEARCH_FLAGS='-Wl,-R,${LIB_RUNTIME_DIR}'
1320
 
                LD_SEARCH_FLAGS=${CC_SEARCH_FLAGS}
1321
 
            else
1322
 
                SHLIB_CFLAGS="-KPIC"
1323
 
                SHLIB_LD="CC -G -z text"
1324
 
                CC_SEARCH_FLAGS='-Wl,-R,${LIB_RUNTIME_DIR}'
1325
 
                LD_SEARCH_FLAGS='-R ${LIB_RUNTIME_DIR}'
1326
 
            fi
1327
 
            ;;
1328
 
        ULTRIX-4.*)
1329
 
            SHLIB_CFLAGS="-G 0"
1330
 
            SHLIB_SUFFIX=".a"
1331
 
            SHLIB_LD="echo tclLdAout $CC \{$SHLIB_CFLAGS\} | `pwd`/tclsh -r -G 0"
1332
 
            SHLIB_LD_LIBS='${LIBS}'
1333
 
            LDFLAGS="-Wl,-D,08000000"
1334
 
            CC_SEARCH_FLAGS='-L${LIB_RUNTIME_DIR}'
1335
 
            LD_SEARCH_FLAGS=${CC_SEARCH_FLAGS}
1336
 
            if test "$GCC" != "yes" ; then
1337
 
                EXTRA_CFLAGS="-DHAVE_TZSET -std1"
1338
 
            fi
1339
 
            ;;
1340
 
        UNIX_SV* | UnixWare-5*)
1341
 
            SHLIB_CFLAGS="-KPIC"
1342
 
            SHLIB_LD="cc -G"
1343
 
            SHLIB_LD_LIBS=""
1344
 
            SHLIB_SUFFIX=".so"
1345
 
            # Some UNIX_SV* systems (unixware 1.1.2 for example) have linkers
1346
 
            # that don't grok the -Bexport option.  Test that it does.
1347
 
            hold_ldflags=$LDFLAGS
1348
 
            AC_MSG_CHECKING(for ld accepts -Bexport flag)
1349
 
            LDFLAGS="${LDFLAGS} -Wl,-Bexport"
1350
 
            AC_TRY_LINK(, [int i;], found=yes, found=no)
1351
 
            LDFLAGS=$hold_ldflags
1352
 
            AC_MSG_RESULT($found)
1353
 
            if test $found = yes; then
1354
 
            LDFLAGS="-Wl,-Bexport"
1355
 
            else
1356
 
            LDFLAGS=""
1357
 
            fi
1358
 
            CC_SEARCH_FLAGS=""
1359
 
            LD_SEARCH_FLAGS=""
1360
 
            ;;
 
580
            SHLIB_LD_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR} -export-dynamic'
 
581
            LD_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR} -L${LIB_RUNTIME_DIR}'
 
582
            # some older NetBSD versions do not handle version numbers with dots.
 
583
            #STLIB_SUFFIX='${GRASS_TRIM_DOTS}.a'
 
584
            #SHLIB_SUFFIX='${GRASS_TRIM_DOTS}.so'
 
585
            #GRASS_LIB_VERSIONS_OK=nodots
 
586
            # NetBSD 6 does handle version numbers with dots.
 
587
            STLIB_SUFFIX=".a"
 
588
            SHLIB_SUFFIX=".so"
 
589
            # TODO: add optional pthread support with any combination of: 
 
590
            # CFLAGS="$CFLAGS -pthread"
 
591
            # LDFLAGS="$LDFLAGS -lpthread"
 
592
            # AC_DEFINE(_REENTRANT)
 
593
            # AC_DEFINE(_POSIX_PTHREAD_SEMANTICS)
 
594
            ;;
 
595
        *aix*)
 
596
                # NOTE: do we need to support aix < 6 ?
 
597
            LIBS="$LIBS -lc"
 
598
            SHLIB_CFLAGS=""
 
599
            LDFLAGS=""
 
600
        if test "$GCC" = "yes" ; then
 
601
            SHLIB_CFLAGS="-fPIC"
 
602
            SHLIB_LD="$CC -shared"
 
603
            LD_SEARCH_FLAGS='-Wl,-bsvr4,-R,${LIB_RUNTIME_DIR}'
 
604
        else
 
605
                # assume xlc
 
606
            SHLIB_CFLAGS="-qmkshrobj"
 
607
            SHLIB_LD="$CC -shared"
 
608
            LD_SEARCH_FLAGS='-Wl,-bsvr4,-R,${LIB_RUNTIME_DIR}'
 
609
        fi
 
610
            SHLIB_SUFFIX=".so"
 
611
            LD_LIBRARY_PATH_VAR="LIBPATH"
 
612
            GRASS_NEEDS_EXP_FILE=1
 
613
            GRASS_EXPORT_FILE_SUFFIX='${LIB_VER}.exp'
 
614
            ;;
 
615
        *)
 
616
            AC_MSG_ERROR([***Unknown platform: $host***])
 
617
            ;;
1361
618
    esac
1362
619
 
1363
 
    # If we're running gcc, then change the C flags for compiling shared
1364
 
    # libraries to the right flags for gcc, instead of those for the
1365
 
    # standard manufacturer compiler.
1366
 
 
1367
 
        if test "$GCC" = "yes" ; then
1368
 
            case $system in
1369
 
                AIX-*)
1370
 
                    ;;
1371
 
                BSD/OS*)
1372
 
                    ;;
1373
 
                *)
1374
 
                    ;;
1375
 
                NetBSD-*|FreeBSD-*)
1376
 
                    ;;
1377
 
                Rhapsody-*|Darwin-*)
1378
 
                    ;;
1379
 
                RISCos-*)
1380
 
                    ;;
1381
 
                SCO_SV-3.2*)
1382
 
                    ;;
1383
 
                ULTRIX-4.*)
1384
 
                    ;;
1385
 
                *)
1386
 
                    SHLIB_CFLAGS="-fPIC"
1387
 
                    ;;
1388
 
            esac
1389
 
        fi
1390
 
 
1391
 
    if test "$SHARED_LIB_SUFFIX" = "" ; then
1392
 
        SHARED_LIB_SUFFIX='${LIB_VER}${SHLIB_SUFFIX}'
1393
 
    fi
1394
 
    if test "$UNSHARED_LIB_SUFFIX" = "" ; then
1395
 
        UNSHARED_LIB_SUFFIX='${LIB_VER}.a'
1396
 
    fi
1397
 
 
1398
 
    if test "${SHARED_BUILD}" = "1" && test "${SHLIB_SUFFIX}" != "" ; then
1399
 
        LIB_SUFFIX=${SHARED_LIB_SUFFIX}
1400
 
        MAKE_LIB='${SHLIB_LD} -o [$]@ ${SHLIB_LD_FLAGS} ${OBJS} ${SHLIB_LD_LIBS} ${GRASS_SHLIB_LD_EXTRAS} ${LD_SEARCH_FLAGS}'
1401
 
        INSTALL_LIB='$(INSTALL_LIBRARY) $(LIB_FILE) $(LIB_INSTALL_DIR)/$(LIB_FILE)'
1402
 
    else
1403
 
        LIB_SUFFIX=${UNSHARED_LIB_SUFFIX}
1404
 
 
1405
 
        if test "$RANLIB" = "" ; then
1406
 
            MAKE_LIB='$(STLIB_LD) [$]@ ${OBJS}'
1407
 
            INSTALL_LIB='$(INSTALL_LIBRARY) $(LIB_FILE) $(LIB_INSTALL_DIR)/$(LIB_FILE)'
1408
 
        else
1409
 
            MAKE_LIB='${STLIB_LD} [$]@ ${OBJS} ; ${RANLIB} [$]@'
1410
 
            INSTALL_LIB='$(INSTALL_LIBRARY) $(LIB_FILE) $(LIB_INSTALL_DIR)/$(LIB_FILE) ; (cd $(LIB_INSTALL_DIR) ; $(RANLIB) $(LIB_FILE))'
1411
 
        fi
1412
 
 
1413
 
dnl        Not at all clear what this was doing in Tcl's configure.in
1414
 
dnl        or why it was needed was needed. In any event, this sort of
1415
 
dnl        things needs to be done in the big loop above.
1416
 
dnl        REMOVE THIS BLOCK LATER! (mdejong)
1417
 
dnl        case $system in
1418
 
dnl            BSD/OS*)
1419
 
dnl                ;;
1420
 
dnl            AIX-[[1-4]].*)
1421
 
dnl                ;;
1422
 
dnl            *)
1423
 
dnl                SHLIB_LD_LIBS=""
1424
 
dnl                ;;
1425
 
dnl        esac
1426
 
    fi
1427
 
 
1428
 
 
1429
 
    # Stub lib does not depend on shared/static configuration
1430
 
    if test "$RANLIB" = "" ; then
1431
 
        MAKE_STUB_LIB='${STLIB_LD} [$]@ ${STUB_LIB_OBJS}'
1432
 
        INSTALL_STUB_LIB='$(INSTALL_LIBRARY) $(STUB_LIB_FILE) $(LIB_INSTALL_DIR)/$(STUB_LIB_FILE)'
1433
 
    else
1434
 
        MAKE_STUB_LIB='${STLIB_LD} [$]@ ${STUB_LIB_OBJS} ; ${RANLIB} [$]@'
1435
 
        INSTALL_STUB_LIB='$(INSTALL_LIBRARY) $(STUB_LIB_FILE) $(LIB_INSTALL_DIR)/$(STUB_LIB_FILE) ; (cd $(LIB_INSTALL_DIR) ; $(RANLIB) $(STUB_LIB_FILE))'
1436
 
    fi
1437
 
 
1438
 
    AC_SUBST(PLAT_OBJS)
1439
 
    AC_SUBST(CFLAGS)
1440
 
    AC_SUBST(CFLAGS_DEBUG)
1441
 
    AC_SUBST(CFLAGS_OPTIMIZE)
1442
 
    AC_SUBST(CFLAGS_WARNING)
1443
 
    AC_SUBST(EXTRA_CFLAGS)
1444
 
 
1445
620
    AC_SUBST(LDFLAGS)
1446
 
    AC_SUBST(LDFLAGS_DEBUG)
1447
 
    AC_SUBST(LDFLAGS_OPTIMIZE)
1448
 
    AC_SUBST(CC_SEARCH_FLAGS)
1449
621
    AC_SUBST(LD_SEARCH_FLAGS)
1450
622
    AC_SUBST(LD_LIBRARY_PATH_VAR)
1451
623
 
1452
 
    AC_SUBST(STLIB_LD)
1453
624
    AC_SUBST(SHLIB_LD)
1454
 
    AC_SUBST(GRASS_SHLIB_LD_EXTRAS)
1455
625
    AC_SUBST(SHLIB_LD_FLAGS)
1456
 
    AC_SUBST(SHLIB_LD_LIBS)
1457
626
    AC_SUBST(SHLIB_CFLAGS)
1458
627
    AC_SUBST(SHLIB_SUFFIX)
1459
628
 
1460
 
    AC_SUBST(MAKE_LIB)
1461
 
    AC_SUBST(MAKE_STUB_LIB)
1462
 
    AC_SUBST(INSTALL_LIB)
1463
 
    AC_SUBST(INSTALL_STUB_LIB)
1464
 
    AC_SUBST(RANLIB)
 
629
    AC_SUBST(STLIB_LD)
 
630
    AC_SUBST(STLIB_SUFFIX)
1465
631
])
1466
632
 
1467
633
 
1475
641
 
1476
642
dnl AC_SYS_LARGEFILE_MACRO_VALUE test moved from AC_FUNC_FSEEKO into AC_SYS_LARGEFILE
1477
643
dnl Do not call AC_FUNC_FSEEKO because it does not check whether fseeko() is
1478
 
dnl available on non Large File mode. There are additionoal tests for fseeko()/ftello()
 
644
dnl available on non Large File mode. There are additional tests for fseeko()/ftello()
1479
645
dnl inside the AC_HAVE_LARGEFILES test.
1480
646
 
1481
647
dnl largefile_cc_opt definition added
1518
684
           [$3=$2])])])
1519
685
   if test "[$]$3" != no; then
1520
686
     AC_DEFINE_UNQUOTED([$1], [$]$3, [$4])
 
687
 
 
688
   if test "$LFS_CFLAGS" ; then
 
689
     LFS_CFLAGS="$LFS_CFLAGS -D$1=[$]$3"
 
690
   else
 
691
     LFS_CFLAGS="-D$1=[$]$3"
 
692
   fi
 
693
 
1521
694
   fi])
1522
695
 
1523
696
AC_DEFUN([AC_SYS_LARGEFILE],
1524
697
  [AC_ARG_ENABLE(largefile,
1525
 
     [  --enable-largefile      enable support for large files (LFS)])
1526
 
   if test "$enable_largefile" = yes; then
 
698
     [  --disable-largefile     omit support for large files (LFS)])
 
699
   LFS_CFLAGS=
 
700
   if test "$enable_largefile" != no; then
 
701
     ac_save_cflags=$CFLAGS
 
702
     if test "`which getconf 2>&5`" ; then
 
703
       LFS_CFLAGS=`getconf LFS_CFLAGS 2>&5`
 
704
       CFLAGS="$LFS_CFLAGS $ac_save_cflags"
 
705
     fi
1527
706
 
1528
707
     AC_CACHE_CHECK([for special C compiler options needed for large files],
1529
708
       ac_cv_sys_largefile_CC,
1542
721
     if test "$ac_cv_sys_largefile_CC" != no; then
1543
722
       CC="$CC$ac_cv_sys_largefile_CC"
1544
723
       largefile_cc_opt="$ac_cv_sys_largefile_CC"
 
724
 
 
725
       if test "$LFS_CFLAGS" ; then
 
726
         LFS_CFLAGS="$LFS_CFLAGS $ac_cv_sys_largefile_CC"
 
727
       else
 
728
         LFS_CFLAGS="$ac_cv_sys_largefile_CC"
 
729
         CFLAGS="$LFS_CFLAGS $ac_save_cflags"
 
730
       fi
1545
731
     fi
1546
732
 
1547
733
     AC_SYS_LARGEFILE_MACRO_VALUE(_FILE_OFFSET_BITS, 64,
1556
742
       ac_cv_sys_largefile_source,
1557
743
       [Define to make fseeko visible on some hosts (e.g. glibc 2.2).],
1558
744
       [#include <stdio.h>], [return !fseeko;])
 
745
 
 
746
     CFLAGS=$ac_save_cflags
1559
747
   fi
1560
748
  ])
1561
749
 
1615
803
                [ac_cv_largefiles=no])])
1616
804
        if test $ac_cv_largefiles = yes; then
1617
805
                AC_DEFINE(HAVE_LARGEFILES)
1618
 
        fi])
 
806
          USE_LARGEFILES=1
 
807
        else
 
808
          USE_LARGEFILES=
 
809
          LFS_CFLAGS=
 
810
        fi
 
811
        AC_SUBST(USE_LARGEFILES)
 
812
        AC_SUBST(LFS_CFLAGS)
 
813
        ])
1619
814
 
1620
815
dnl Checks for whether fseeko() is available in non large file mode
1621
816
dnl and whether there is a prototype for fseeko()