summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Sharpe <sharpe@samba.org>2001-09-09 10:07:37 +0000
committerRichard Sharpe <sharpe@samba.org>2001-09-09 10:07:37 +0000
commitc7fdef2f0deb9c9033b9f929695c60ffc2e4ea4f (patch)
treead3639f134fd020b5d6b0600316db8177026fe9f
parentc86982d3f446394c4f4cb48795bc8990bb5718b6 (diff)
downloadsamba-c7fdef2f0deb9c9033b9f929695c60ffc2e4ea4f.tar.gz
samba-c7fdef2f0deb9c9033b9f929695c60ffc2e4ea4f.tar.xz
samba-c7fdef2f0deb9c9033b9f929695c60ffc2e4ea4f.zip
Commit the changes to Makefile.in and configure.in to have libsmbclient
build by default. Now to do some fiddling ... where is my violin :-)
-rw-r--r--source/Makefile.in21
-rw-r--r--source/configure.in34
2 files changed, 44 insertions, 11 deletions
diff --git a/source/Makefile.in b/source/Makefile.in
index e190d8d270e..4663ca561d6 100644
--- a/source/Makefile.in
+++ b/source/Makefile.in
@@ -62,6 +62,9 @@ SWATDIR = @swatdir@
# the directory where lock files go
LOCKDIR = @lockdir@
+# libsmbclient support here
+BLDSHARED = @BLDSHARED@
+
# The directory where code page definition files go
CODEPAGEDIR = @codepagedir@
@@ -89,6 +92,7 @@ PROGS2 = bin/smbpasswd bin/make_smbcodepage bin/rpcclient bin/make_unicodemap bi
MPROGS = @MPROGS@
LPROGS = @WINBIND_LTARGETS@
PROGS = $(PROGS1) $(PROGS2) $(MPROGS) bin/nmblookup
+SHLIBS = libsmbclient
SCRIPTS = $(srcdir)/script/smbtar
@@ -392,7 +396,7 @@ NSS_OBJ = $(NSS_OBJ_0:.o=.po)
# now the rules...
######################################################################
-all : CHECK $(SPROGS) $(PROGS) nsswitch
+all : CHECK $(SPROGS) $(PROGS) nsswitch $(SHLIBS)
# The following "everything" is NOT needed except by Samba developers - so do not use this!
everything : CHECK $(SPROGS) $(PROGS) nsswitch smbwrapper smbtorture debug2html smbfilter nsswitch/libnss_wins.so
@@ -454,9 +458,9 @@ MAKEDIR = || exec false; \
dir=`echo $@ | sed 's,/[^/]*$$,,;s,^$$,.,'` $(MAKEDIR); fi
@echo Compiling $*.c with @PICFLAG@
@$(CC) -I. -I$(srcdir) $(FLAGS) @PICFLAG@ -c $< \
- -o $*.po.o
+ -o $*.@PICSUFFIX@
@BROKEN_CC@ -mv `echo $@ | sed -e 's%^.*/%%g' -e 's%\.po$$%.o%'` $@.o
- @mv $*.po.o $@
+@POBAD_CC@ @mv $*.po.o $@
# this is for IRIX
.c.po32:
@@ -598,9 +602,14 @@ bin/smbwrapper.32.@SHLIBEXT@: $(PICOBJS32)
@echo Linking shared library $@
@$(LD) -32 @LDSHFLAGS@ -o $@ $(PICOBJS32) $(LIBS)
-bin/libsmbclient.so: $(LIBSMBCLIENT_PICOBJS)
- @echo Linking libsmbclient shared library $@
- @$(LD) -shared -o $@ $(LIBSMBCLIENT_PICOBJS) $(LIBS) # Anything else?
+libsmbclient: $(LIBSMBCLIENT_PICOBJS)
+ if [ $(BLDSHARED) = true ]; then \
+ echo Linking libsmbclient shared library bin/$@@shlibext@; \
+ $(LD) @LDSHFLAGS@ -o bin/$@.@SHLIBEXT@ $(LIBSMBCLIENT_PICOBJS) $(LIBS); \
+ fi
+ @echo Linking libsmbclient non-shared library bin/$@.a
+ @$(AR) -rc bin/$@.a $(LIBSMBCLIENT_PICOBJS)
+
bin/smbsh: $(SMBSH_OBJ) bin/.dummy
@echo Linking $@
diff --git a/source/configure.in b/source/configure.in
index 4e3ea15b79b..741ebb2fe51 100644
--- a/source/configure.in
+++ b/source/configure.in
@@ -123,7 +123,10 @@ AC_SUBST(PAM_MOD)
AC_SUBST(WRAP)
AC_SUBST(WRAP32)
AC_SUBST(PICFLAG)
+AC_SUBST(PICSUFFIX)
AC_SUBST(SHLIBEXT)
+AC_SUBST(BLDSHARED)
+AC_SUBST(POBAD_CC) dnl This handles C compilers that don't like .po
# compile with optimization and without debugging by default
CFLAGS="-O ${CFLAGS}"
@@ -723,18 +726,34 @@ AC_LIBTESTFUNC(sec, getprpwnam)
HOST_OS="$host_os"
LDSHFLAGS="-shared"
PICFLAG=""
+PICSUFFIX="po"
+POBAD_CC="#"
SHLIBEXT="so"
+# Assume non-shared by default and override below
+BLDSHARED="false"
# and these are for particular systems
case "$host_os" in
- *linux*) AC_DEFINE(LINUX);;
- *solaris*) AC_DEFINE(SUNOS5)
- LDSHFLAGS="-G"
+ *linux*) AC_DEFINE(LINUX)
+ BLDSHARED="true"
+ LDSHFLAGS="-shared"
+ PICFLAG="-fPIC"
;;
+ *solaris*) AC_DEFINE(SUNOS5)
+ BLDSHARED="true"
+ LDSHFLAGS="-Wl,-soname,\$@ -shared"
+ PICFLAG="-KPIC -xO4"
+ PICSUFFIX="po.o"
+ ;;
*sunos*) AC_DEFINE(SUNOS4)
- LDSHFLAGS=""
+ BLDSHARED="true"
+ LDSHFLAGS="-Wl,-h,\$@ -G"
+ PICFLAG="-KPIC -O2" # Is this correct for SunOS?
;;
*bsd*) LDSHFLAGS="-shared -Bshareable"
+ BLDSHARED="true"
+ LDSHFLAGS="-Wl,-soname,\@ -shared"
+ PICFLAG="-fPIC -O2"
;;
*irix*) AC_DEFINE(IRIX)
case "$host_os" in
@@ -742,8 +761,13 @@ case "$host_os" in
;;
esac
ATTEMPT_WRAP32_BUILD=yes
+ #BLDSHARED="true" # Leave out for now
+ #LDSHFLAGS="-Wl,-soname,\$@ -shared"
+ #PICFLAG="-fPIC"
+ ;;
+ *aix*) AC_DEFINE(AIX)
+ # AIX is too ugly for now
;;
- *aix*) AC_DEFINE(AIX);;
*hpux*) AC_DEFINE(HPUX)
SHLIBEXT="sl"
# Use special PIC flags for the native HP-UX compiler.