You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@apr.apache.org by rb...@apache.org on 2001/01/09 20:28:39 UTC

cvs commit: apr APRVARS.in configure.in

rbb         01/01/09 11:28:38

  Modified:    .        configure.in
               .        APRVARS.in configure.in
  Log:
  Fix a compile break with the new APR libtool setup.  Basically, we are
  using a libtool library from MM, but it isn't getting linked into the
  Apache executable, so we fail the link stage.  This makes APR
  publicize the libtool libraries that it uses, so that Apache can link
  them in.
  
  Revision  Changes    Path
  1.114     +2 -1      httpd-2.0/configure.in
  
  Index: configure.in
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/configure.in,v
  retrieving revision 1.113
  retrieving revision 1.114
  diff -u -r1.113 -r1.114
  --- configure.in	2001/01/09 11:35:46	1.113
  +++ configure.in	2001/01/09 19:28:33	1.114
  @@ -204,7 +204,7 @@
   
   dnl AP_LIB_DIRS specifies the additional libs from srclib/ that we need
   dnl AP_LIBS specifies the actual libraries. note we have some required libs.
  -AP_LIBS="srclib/pcre/libpcre.la srclib/apr-util/libaprutil.la"
  +AP_LIBS="srclib/pcre/libpcre.la srclib/apr-util/libaprutil.la $AP_LIBS"
   
   if test "$apache_need_expat" = "yes"; then
     AP_LIB_DIRS="$AP_LIB_DIRS expat-lite"
  @@ -256,6 +256,7 @@
   dnl get the exported vars from APRUTIL
   . ./srclib/apr-util/export_vars.sh
   EXTRA_LIBS="$EXTRA_LIBS $APRUTIL_EXPORT_LIBS"
  +AP_LIBS="$AP_LIBS $LIBTOOL_LIBS"
   
   APACHE_GEN_CONFIG_VARS
   
  
  
  
  1.5       +1 -0      apr/APRVARS.in
  
  Index: APRVARS.in
  ===================================================================
  RCS file: /home/cvs/apr/APRVARS.in,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- APRVARS.in	2000/10/25 12:56:00	1.4
  +++ APRVARS.in	2001/01/09 19:28:36	1.5
  @@ -1,3 +1,4 @@
   EXTRA_CPPFLAGS="$EXTRA_CPPFLAGS @THREAD_CPPFLAGS@"
   EXTRA_CFLAGS="$EXTRA_CFLAGS @THREAD_CFLAGS@"
   EXTRA_LIBS="$EXTRA_LIBS @LIBS@"
  +LIBTOOL_LIBS="$LIBTOOL_LIBS @LIBTOOL_LIBS@"
  
  
  
  1.207     +2 -0      apr/configure.in
  
  Index: configure.in
  ===================================================================
  RCS file: /home/cvs/apr/configure.in,v
  retrieving revision 1.206
  retrieving revision 1.207
  diff -u -r1.206 -r1.207
  --- configure.in	2001/01/09 11:05:34	1.206
  +++ configure.in	2001/01/09 19:28:36	1.207
  @@ -158,6 +158,7 @@
     sharedmem="1"
     anonymous_shm="1"
     AC_MSG_RESULT(anonymous)
  +  LIBTOOL_LIBS="$abs_srcdir/shmem/unix/mm/libmm.la"
   elif test "$ac_cv_enable_shmem" = "file"; then
     sharedmem="1"
     filebased_shm="1"
  @@ -865,6 +866,7 @@
   AC_SUBST(EXEEXT)
   AC_SUBST(THREAD_CPPFLAGS)
   AC_SUBST(THREAD_CFLAGS)
  +AC_SUBST(LIBTOOL_LIBS)
   
   echo "${nl}Construct Makefiles and header files."
   MAKEFILE1="Makefile lib/Makefile strings/Makefile passwd/Makefile tables/Makefile"
  
  
  

Re: cvs commit: apr APRVARS.in configure.in

Posted by Jeff Trawick <tr...@bellsouth.net>.
Jeff Trawick <tr...@bellsouth.net> writes:

> Oops... I meant to follow up to the list... trying again.
> 
> Note also that upgrading to libtool 1.3.4 and libtool 1.3.5 didn't
> help.

Double loser...   I didn't blow away ltmain.sh after upgrading, and
ltmain.sh is where the bug was.

libtool 1.3.4 has a fix for the problem.

Unless somebody shouts real soon, I'll change the libtool check to
require 1.3.4 instead of 1.3.3.

Also, I noticed that build/cvsclean doesn't blow away all copies of
ltmain.sh:

./srclib/pcre/ltmain.sh
./srclib/apr/shmem/unix/mm/ltmain.sh
./ltmain.sh         

The first two reside in cvs, so it is okay not to remove them.

The last one isn't in cvs so it has to go.
-- 
Jeff Trawick | trawickj@bellsouth.net | PGP public key at web site:
       http://www.geocities.com/SiliconValley/Park/9289/
             Born in Roswell... married an alien...

Re: cvs commit: apr APRVARS.in configure.in

Posted by Jeff Trawick <tr...@bellsouth.net>.
Oops... I meant to follow up to the list... trying again.

Note also that upgrading to libtool 1.3.4 and libtool 1.3.5 didn't
help.

Greg Stein <gs...@lyra.org> writes:

> That patch is just plain wrong. Usable as a stopgap, but not something to be
> committed.
> 
> I was dead tired last night and had to crash after some minimal testing.
> I'll get the stuff cleaned back up.
> 
> Jeff: what is going wrong for you with Ryan's new patch?

Here is the tail end of a build just now on an up-to-date clean tree:

make[3]: Leaving directory `/home/trawick/apache/httpd-2.0/srclib/apr/dso/unix'
make[3]: Entering directory `/home/trawick/apache/httpd-2.0/srclib/apr'
/bin/sh /home/trawick/apache/httpd-2.0/srclib/apr/libtool --mode=link --silent gcc -DLINUX=2 -DAPACHE_XLATE
Wall -Wmissing-prototypes -Wstrict-prototypes -Wmissing-declarations -I./include -I../include -o libapr.l.Aa -rpath /usr/local/lib lib/apr_pools.lo strings/apr_cpystrn.lo strings/apr_fnmatch.lo strings/apr_snprintf.lo strings/apr_strings.lo strings/apr_strnatcmp.lo passwd/apr_getpass.lo passwd/apr_md5.lo tables/apr_hash.lo tables/apr_tables.lo file_io/unix/dir.lo file_io/unix/fileacc.lo file_io/unix/filedup.lo file_io/unix/filestat.lo file_io/unix/flock.lo file_io/unix/fullrw.lo file_io/unix/open.lo file_io/unix/pipe.lo file_io/unix/readwrite.lo file_io/unix/seek.lo network_io/unix/inet_ntop.lo network_io/unix/inet_pton.lo network_io/unix/poll.lo network_io/unix/sendrecv.lo network_io/unix/sockaddr.lo network_io/unix/sockets.lo network_io/unix/sockopt.lo threadproc/unix/proc.lo threadproc/unix/procsup.lo threadproc/unix/signals.lo threadproc/unix/thread.lo threadproc/unix/threadpriv.lo misc/unix/errorcodes.lo misc/unix/getopt.lo misc/unix/getuuid.lo misc/unix/otherchild.lo mis!
!
c/unix/rand.lo misc/unix/start.lo misc/unix/uuid.lo locks/unix/crossproc.lo locks/unix/intraproc.lo locks/unix/locks.lo time/unix/time.lo time/unix/timestr.lo mmap/unix/common.lo mmap/unix/mmap.lo shmem/unix/mm_alloc.lo shmem/unix/mm_core.lo shmem/unix/mm_global.lo shmem/unix/mm_lib.lo shmem/unix/mm_vers.lo shmem/unix/shmem.lo i18n/unix/xlate.lo user/unix/homedir.lo dso/unix/dso.lo
ar: shmem/unix/mm_alloc.o: No such file or directory
make[3]: *** [libapr.la] Error 1
make[3]: Leaving directory `/home/trawick/apache/httpd-2.0/srclib/apr'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/trawick/apache/httpd-2.0/srclib/apr'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/trawick/apache/httpd-2.0/srclib'
make: *** [all-recursive] Error 1 

Here are the files in shmem/unix.  Look at the symbolic links.  Not
too cool.  They were created by libtool...

[trawick@adsl-77-241-65 httpd-2.0]$ dir srclib/apr/shmem/unix/
total 48
drwxrwxr-x   4 trawick  trawick      1024 Jan 10 07:01 .
drwxrwxr-x   5 trawick  trawick      1024 Dec  4 17:23 ..
-rw-rw-r--   1 trawick  trawick        20 Jan  9 15:17 .cvsignore
drwxrwxr-x   2 trawick  trawick      1024 Jan  9 15:17 CVS
-rw-rw-r--   1 trawick  trawick       657 Jan 10 07:00 Makefile
-rw-rw-r--   1 trawick  trawick       549 Jan  9 15:17 Makefile.in
drwxrwxr-x   4 trawick  trawick      2048 Jan 10 07:01 mm
-rw-rw-r--   1 trawick  trawick        10 Jan 10 07:01 mm_alloc.lo
lrwxrwxrwx   1 trawick  trawick        22 Jan 10 07:01 mm_alloc.o -> shmem/unix/mm_alloc.lo
-rw-rw-r--   1 trawick  trawick        10 Jan 10 07:01 mm_core.lo
lrwxrwxrwx   1 trawick  trawick        21 Jan 10 07:01 mm_core.o -> shmem/unix/mm_core.lo
-rw-rw-r--   1 trawick  trawick        10 Jan 10 07:01 mm_global.lo
lrwxrwxrwx   1 trawick  trawick        23 Jan 10 07:01 mm_global.o -> shmem/unix/mm_global.lo
-rw-rw-r--   1 trawick  trawick        10 Jan 10 07:01 mm_lib.lo
lrwxrwxrwx   1 trawick  trawick        20 Jan 10 07:01 mm_lib.o -> shmem/unix/mm_lib.lo
-rw-rw-r--   1 trawick  trawick        10 Jan 10 07:01 mm_vers.lo
lrwxrwxrwx   1 trawick  trawick        21 Jan 10 07:01 mm_vers.o -> shmem/unix/mm_vers.lo
-rw-rw-r--   1 trawick  trawick      6381 Jan  8 10:34 shmem.c
-rw-rw-r--   1 trawick  trawick        10 Jan 10 07:01 shmem.lo
-rw-rw-r--   1 trawick  trawick     26420 Jan 10 07:01 shmem.o 

Here is what libtool is doing (I turned off --silent):

make[1]: Entering directory `/home/trawick/apache/httpd-2.0/srclib/apr'
/bin/sh /home/trawick/apache/httpd-2.0/srclib/apr/libtool --mode=link gcc -DLINUX=2 -DAPACHE_XLA
TE -g -Wall -Wmissing-prototypes -Wstrict-prototypes -Wmissing-declarations -DAP_DEBUG -DNO_DBM_
apr_fnmatch.lo strings/apr_snprintf.lo strings/apr_strings.lo strings/apr_strnatcmp.lo passwd/apr_getpass.lo passwd/apr_md5.lo tables/apr_hash.lo tables/apr_tables.lo file_io/unix/dir.lo file_io/unix/fileacc.lo file_io/unix/filedup.lo file_io/unix/filestat.lo file_io/unix/flock.lo file_io/unix/fullrw.lo file_io/unix/open.lo file_io/unix/pipe.lo file_io/unix/readwrite.lo file_io/unix/seek.lo network_io/unix/inet_ntop.lo network_io/unix/inet_pton.lo network_io/unix/poll.lo network_io/unix/sendrecv.lo network_io/unix/sockaddr.lo network_io/unix/sockets.lo network_io/unix/sockopt.lo threadproc/unix/proc.lo threadproc/unix/procsup.lo threadproc/unix/signals.lo threadproc/unix/thread.lo threadproc/unix/threadpriv.lo misc/unix/errorcodes.lo misc/unix/getopt.lo misc/unix/getuuid.lo misc/unix/otherchild.lo misc/unix/rand.lo misc/unix/start.lo misc/unix/uuid.lo
locks/unix/crossproc.lo locks/unix/intraproc.lo locks/unix/locks.lo time/unix/time.lo time/unix/timestr.lo mmap/unix/common.lo mmap/unix/mmap.lo shmem/unix/mm_alloc.lo shmem/unix/mm_core.lo shmem/unix/mm_global.lo shmem/unix/mm_lib.lo shmem/unix/mm_vers.lo shmem/unix/shmem.lo i18n/unix/xlate.lo user/unix/homedir.lo dso/unix/dso.lo
mkdir .libs
ln -s shmem/unix/mm_alloc.lo shmem/unix/mm_alloc.o
ln -s shmem/unix/mm_core.lo shmem/unix/mm_core.o
ln -s shmem/unix/mm_global.lo shmem/unix/mm_global.o
ln -s shmem/unix/mm_lib.lo shmem/unix/mm_lib.o
ln -s shmem/unix/mm_vers.lo shmem/unix/mm_vers.o
ar cru .libs/libapr.a  lib/apr_pools.o strings/apr_cpystrn.o strings/apr_fnmatch.o strings/apr_snprintf.o strings/apr_strings.o strings/apr_strnatcmp.o passwd/apr_getpass.o passwd/apr_md5.o tables/apr_hash.o tables/apr_tables.o file_io/unix/dir.o file_io/unix/fileacc.o file_io/unix/filedup.o file_io/unix/filestat.o file_io/unix/flock.o file_io/unix/fullrw.o file_io/unix/open.o file_io/unix/pipe.o file_io/unix/readwrite.o file_io/unix/seek.o network_io/unix/inet_ntop.o network_io/unix/inet_pton.o network_io/unix/poll.o network_io/unix/sendrecv.o network_io/unix/sockaddr.o network_io/unix/sockets.o network_io/unix/sockopt.o threadproc/unix/proc.o threadproc/unix/procsup.o threadproc/unix/signals.o threadproc/unix/thread.o threadproc/unix/threadpriv.o misc/unix/errorcodes.o misc/unix/getopt.o misc/unix/getuuid.o misc/unix/otherchild.o misc/unix/rand.o misc/unix/start.o misc/unix/uuid.o locks/unix/crossproc.o locks/unix/intraproc.o locks/unix/locks.o time/unix/time.o time/unix/tim!
!
estr.o mmap/unix/common.o mmap/unix/mmap.o shmem/unix/mm_alloc.o
shmem/unix/mm_core.o shmem/unix/mm_global.o shmem/unix/mm_lib.o shmem/unix/mm_vers.o shmem/unix/shmem.o i18n/unix/xlate.o user/unix/homedir.o dso/unix/dso.o
ar: shmem/unix/mm_alloc.o: No such file or directory
make[1]: *** [libapr.la] Error 1
make[1]: Leaving directory `/home/trawick/apache/httpd-2.0/srclib/apr'
make: *** [all-recursive] Error 1
[trawick@adsl-77-241-65 apr]$     

[trawick@adsl-77-241-65 apr]$ libtool --version
ltmain.sh (GNU libtool) 1.3.3 (1.385.2.181 1999/07/02 15:49:11) 

-- 
Jeff Trawick | trawickj@bellsouth.net | PGP public key at web site:
       http://www.geocities.com/SiliconValley/Park/9289/
             Born in Roswell... married an alien...

Re: cvs commit: apr APRVARS.in configure.in

Posted by Greg Stein <gs...@lyra.org>.
That patch is just plain wrong. Usable as a stopgap, but not something to be
committed.

I was dead tired last night and had to crash after some minimal testing.
I'll get the stuff cleaned back up.

Jeff: what is going wrong for you with Ryan's new patch?

Cheers,
-g

On Tue, Jan 09, 2001 at 03:25:35PM -0500, Jeff Trawick wrote:
> rbb@apache.org writes:
> 
> > rbb         01/01/09 11:28:38
> > 
> >   Modified:    .        configure.in
> >                .        APRVARS.in configure.in
> >   Log:
> >   Fix a compile break with the new APR libtool setup.  Basically, we are
> >   using a libtool library from MM, but it isn't getting linked into the
> >   Apache executable, so we fail the link stage.  This makes APR
> >   publicize the libtool libraries that it uses, so that Apache can link
> >   them in.
> 
> This doesn't get it building for me :(
> 
> Before this commit, the patch at the bottom from Victor got us going.
> 
> Index: Makefile.in
> ===================================================================
> RCS file: /home/cvspublic/apr/Makefile.in,v
> retrieving revision 1.37
> diff -u -d -r1.37 Makefile.in
> --- Makefile.in	2001/01/09 11:05:33	1.37
> +++ Makefile.in	2001/01/09 19:38:53
> @@ -42,7 +42,8 @@
>  $(LIBAPR): $(MODULES)
>  	@for i in $(SUBDIRS); do objects="$$objects $$i/*.lo"; done ; \
>  	    echo $(LINK) -rpath $(libdir) $$objects ; \
> -	    $(LINK) -rpath $(libdir) $$objects
> +	    $(LINK) -rpath $(libdir) $$objects ; \
> +            ln -s .libs/libapr.a
>  
>  delete-exports:
>  	@if test -f $(TARGET_EXPORTS); then \
> Index: shmem/unix/Makefile.in
> ===================================================================
> RCS file: /home/cvspublic/apr/shmem/unix/Makefile.in,v
> retrieving revision 1.15
> diff -u -d -r1.15 Makefile.in
> --- shmem/unix/Makefile.in	2001/01/09 11:06:15	1.15
> +++ shmem/unix/Makefile.in	2001/01/09 19:39:59
> @@ -17,11 +17,12 @@
>  # build the MM library, then copy the objects to this dir so our top-level
>  # will find them and copy them to the (top)/objs directory
>  MM_OBJS = \
> -	mm/mm_global.lo mm/mm_alloc.lo mm/mm_core.lo mm/mm_lib.lo \
> -	mm/mm_vers.lo
> +	mm/mm_global.o mm/mm_alloc.o mm/mm_core.o mm/mm_lib.o \
> +	mm/mm_vers.o
>  
>  build-mm:
>  	(cd mm && $(MAKE) libmm.la)
> -	cp $(MM_OBJS) .
> +	@rm -f mm*.o mm*.lo
> +	@for i in $(MM_OBJS); do ln $$i `echo $$i | sed -e 's/.*\/\(.*\)\.o/\1\.lo/'`; done 
>  
>  # DO NOT REMOVE
> 
> -- 
> Jeff Trawick | trawickj@bellsouth.net | PGP public key at web site:
>        http://www.geocities.com/SiliconValley/Park/9289/
>              Born in Roswell... married an alien...

-- 
Greg Stein, http://www.lyra.org/

Re: cvs commit: apr APRVARS.in configure.in

Posted by Jeff Trawick <tr...@bellsouth.net>.
rbb@apache.org writes:

> rbb         01/01/09 11:28:38
> 
>   Modified:    .        configure.in
>                .        APRVARS.in configure.in
>   Log:
>   Fix a compile break with the new APR libtool setup.  Basically, we are
>   using a libtool library from MM, but it isn't getting linked into the
>   Apache executable, so we fail the link stage.  This makes APR
>   publicize the libtool libraries that it uses, so that Apache can link
>   them in.

This doesn't get it building for me :(

Before this commit, the patch at the bottom from Victor got us going.

Index: Makefile.in
===================================================================
RCS file: /home/cvspublic/apr/Makefile.in,v
retrieving revision 1.37
diff -u -d -r1.37 Makefile.in
--- Makefile.in	2001/01/09 11:05:33	1.37
+++ Makefile.in	2001/01/09 19:38:53
@@ -42,7 +42,8 @@
 $(LIBAPR): $(MODULES)
 	@for i in $(SUBDIRS); do objects="$$objects $$i/*.lo"; done ; \
 	    echo $(LINK) -rpath $(libdir) $$objects ; \
-	    $(LINK) -rpath $(libdir) $$objects
+	    $(LINK) -rpath $(libdir) $$objects ; \
+            ln -s .libs/libapr.a
 
 delete-exports:
 	@if test -f $(TARGET_EXPORTS); then \
Index: shmem/unix/Makefile.in
===================================================================
RCS file: /home/cvspublic/apr/shmem/unix/Makefile.in,v
retrieving revision 1.15
diff -u -d -r1.15 Makefile.in
--- shmem/unix/Makefile.in	2001/01/09 11:06:15	1.15
+++ shmem/unix/Makefile.in	2001/01/09 19:39:59
@@ -17,11 +17,12 @@
 # build the MM library, then copy the objects to this dir so our top-level
 # will find them and copy them to the (top)/objs directory
 MM_OBJS = \
-	mm/mm_global.lo mm/mm_alloc.lo mm/mm_core.lo mm/mm_lib.lo \
-	mm/mm_vers.lo
+	mm/mm_global.o mm/mm_alloc.o mm/mm_core.o mm/mm_lib.o \
+	mm/mm_vers.o
 
 build-mm:
 	(cd mm && $(MAKE) libmm.la)
-	cp $(MM_OBJS) .
+	@rm -f mm*.o mm*.lo
+	@for i in $(MM_OBJS); do ln $$i `echo $$i | sed -e 's/.*\/\(.*\)\.o/\1\.lo/'`; done 
 
 # DO NOT REMOVE

-- 
Jeff Trawick | trawickj@bellsouth.net | PGP public key at web site:
       http://www.geocities.com/SiliconValley/Park/9289/
             Born in Roswell... married an alien...