Add macro for picflag.
authorjelmer <jelmer@samba.org>
Tue, 6 Nov 2007 02:16:55 +0000 (02:16 +0000)
committerStefan Metzmacher <metze@samba.org>
Tue, 6 Nov 2007 08:38:58 +0000 (09:38 +0100)
git-svn-id: svn+ssh://svn.samba.org/data/svn/samba/branches/SAMBA_4_0@25850 0c0555d6-39d7-0310-84fc-f1cc0bd64818

source/lib/replace/libreplace_ld.m4

index 8d7d3d7ebb7f8763e77a74ed602285b3dbc1da91..d3d3f9464fc98024ef3dd306ed66dbc0c597c4f0 100644 (file)
@@ -8,3 +8,58 @@ AC_LINK_IFELSE([ int main() { return 0; } ],
 AC_SUBST(LD_EXPORT_DYNAMIC)
 LDFLAGS="$saved_LDFLAGS"
 ])
+
+AC_DEFUN([AC_LD_PICFLAG],
+[
+case "$host_os" in
+       *linux*) 
+               PICFLAG="-fPIC" 
+               ;;
+       *solaris*)
+               if test "${GCC}" = "yes"; then
+                       PICFLAG="-fPIC"
+               else
+                       PICFLAG="-KPIC"
+               fi
+               ;;
+       *sunos*)
+               PICFLAG="-KPIC"   # Is this correct for SunOS
+               ;;
+       *netbsd* | *freebsd* | *dragonfly* )  
+               PICFLAG="-fPIC -DPIC"
+               ;;
+       *openbsd*)
+               PICFLAG="-fPIC"
+               ;;
+       *irix*)
+               if test "${GCC}" = "yes"; then
+                       PICFLAG="-fPIC"
+               else 
+                       PICFLAG="-KPIC"
+               fi
+               ;;
+       *aix*)
+               # as AIX code is always position independent...
+               PICFLAG="-O2"
+               ;;
+       *hpux*)
+               if test $ac_cv_prog_cc_Ae = yes; then
+                       PICFLAG="+z +ESnolit"
+               elif test "${GCC}" = "yes"; then
+                       PICFLAG="-fPIC"
+               fi
+               if test "$host_cpu" = "ia64"; then
+                       PICFLAG="+z"
+               fi
+               ;;
+       *osf*)
+               PICFLAG="-fPIC"
+               ;;
+       *unixware*)
+               PICFLAG="-KPIC"
+               ;;
+       *darwin*)
+               ;;
+esac
+AC_SUBST(PICFLAG)
+])