gnash-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gnash-commit] /srv/bzr/gnash/trunk r9694: merge libtool2 support from b


From: rob
Subject: [Gnash-commit] /srv/bzr/gnash/trunk r9694: merge libtool2 support from branch
Date: Mon, 08 Sep 2008 09:04:44 -0600
User-agent: Bazaar (1.5)

------------------------------------------------------------
revno: 9694
committer: address@hidden
branch nick: trunk
timestamp: Mon 2008-09-08 09:04:44 -0600
message:
  merge libtool2 support from branch
added:
  libbase/libltdl.am
modified:
  Makefile.am
  autogen.sh
  configure.ac
  libbase/Makefile.am
  macros/libltdl.m4
    ------------------------------------------------------------
    revno: 9692.1.1
    committer: address@hidden
    branch nick: build
    timestamp: Sun 2008-09-07 20:21:50 -0600
    message:
      new libtool 2.x support
    added:
      libbase/libltdl.am
    ------------------------------------------------------------
    revno: 9692.1.2
    committer: address@hidden
    branch nick: build
    timestamp: Sun 2008-09-07 20:23:41 -0600
    message:
      libtool 2.x support
    modified:
      autogen.sh
    ------------------------------------------------------------
    revno: 9692.1.3
    committer: address@hidden
    branch nick: build
    timestamp: Sun 2008-09-07 20:25:36 -0600
    message:
      libtool 2.x support
    modified:
      Makefile.am
      configure.ac
    ------------------------------------------------------------
    revno: 9692.1.4
    committer: address@hidden
    branch nick: build
    timestamp: Sun 2008-09-07 20:26:17 -0600
    message:
      libtool 2.x support
    modified:
      libbase/Makefile.am
    ------------------------------------------------------------
    revno: 9692.1.5
    committer: address@hidden
    branch nick: build
    timestamp: Sun 2008-09-07 20:27:29 -0600
    message:
      add stubs for LT_INIT and LTDL_INIT
    modified:
      macros/libltdl.m4
    ------------------------------------------------------------
    revno: 9692.1.6
    committer: address@hidden
    branch nick: build
    timestamp: Mon 2008-09-08 08:31:18 -0600
    message:
      Don't fix Makefile.am
    modified:
      autogen.sh
    ------------------------------------------------------------
    revno: 9692.1.7
    committer: address@hidden
    branch nick: build
    timestamp: Mon 2008-09-08 08:32:03 -0600
    message:
      Add stubs for new *_INIT macros from libtool2
    modified:
      macros/libltdl.m4
    ------------------------------------------------------------
    revno: 9692.1.8
    committer: address@hidden
    branch nick: build
    timestamp: Mon 2008-09-08 08:32:27 -0600
    message:
      Move AC_PROG_LIBTOOL after the other libtool tests
    modified:
      configure.ac
=== modified file 'Makefile.am'
--- a/Makefile.am       2008-09-01 20:33:39 +0000
+++ b/Makefile.am       2008-09-08 02:25:36 +0000
@@ -59,7 +59,12 @@
 CYGNAL_DIR = cygnal
 endif
 
-SUBDIRS = $(STD_DIRS) $(CYGNAL_DIR)
+# # libtool requires we build in that directory
+# if LIBLTDL2
+# LTDL2_DIR = libltdl
+# endif
+
+SUBDIRS = $(STD_DIRS) $(CYGNAL_DIR) $(LTDL2_DIR)
 
 if TESTSUITE
 SUBDIRS += testsuite

=== modified file 'autogen.sh'
--- a/autogen.sh        2008-06-09 19:53:46 +0000
+++ b/autogen.sh        2008-09-08 15:04:44 +0000
@@ -112,20 +112,36 @@
 # renamed to gnashconfig,h to be unique. As the files libtoolize copies insist
 # on using config.h, we just edit the name, rather than adding a fixed copy to
 # Gnash.
-if grep "^AC_PROG_LIBTOOL" configure.ac >/dev/null; then
-       if test -z "$NO_LIBTOOLIZE" ; then 
-         echo "Running libtoolize --force --ltdl --copy ..."
-         if ${LIBTOOLIZE:-libtoolize} --force --ltdl --copy; then
-           mv libltdl/ltdl.c libltdl/ltdl.c.orig
-           sed -e 's/include <config.h>/include <gnashconfig.h>/' 
libltdl/ltdl.c.orig > libltdl/ltdl.c
-           #rm libltdl/ltdl.c.orig
-           chmod a+w libltdl/config-h.in # Darwin needs this
-          else
-            echo
-            echo "**Error**: libtoolize failed, do you have libtool and 
libltdl3-dev packages installed?"
-            exit 1
-          fi
-       fi
+ltdlver=`${LIBTOOLIZE:-libtoolize} --version | head -1 | cut -d ' ' -f 4`
+ltdlmajor=`echo $ltdlver | cut -d '.' -f 1`
+if test -z "$NO_LIBTOOLIZE" ; then 
+  libtoolflags="--force --ltdl --copy"
+  if test $ltdlmajor -eq 2; then
+    libtoolflags="${libtoolflags} --quiet --nonrecursive"
+    ltdldirs=libltdl/libltdl/*.h
+  fi
+  echo "Running libtoolize $ltdlver ${libtoolflags} ..."
+  if ${LIBTOOLIZE:-libtoolize} ${libtoolflags}; then
+    # libtool insists on including config.h, but we use gnashconfig.h
+    # to avoid any problems, so we have to change this include
+    # so they all reference the right config header file.
+    if test -d libltdl; then
+      for i in libltdl/*.c $ltdldirs; do
+#      echo "Fixing $i..."
+        mv $i $i.orig
+        sed -e 's/include <config.h>/include <gnashconfig.h>/' $i.orig > $i
+      done
+    fi
+#            mv libltdl/ltdl.c libltdl/ltdl.c.orig
+#            sed -e 's/include <config.h>/include <gnashconfig.h>/' 
libltdl/ltdl.c.orig > libltdl/ltdl.c
+    if test -f libltdl/config-h.in; then
+      chmod a+w libltdl/config-h.in # Darwin needs this
+    fi
+  else
+    echo
+    echo "**Error**: libtoolize failed, do you have libtool and libltdl3-dev 
packages installed?"
+    exit 1
+  fi
 fi
 
 #for coin in `find $srcdir -name CVS -prune -o -name configure.ac -print`
@@ -144,6 +160,10 @@
         aclocalinclude="$ACLOCAL_FLAGS"
      fi
 
+     if test -d libltdl/m4; then
+        aclocalinclude="-I libltdl/m4 -I macros $ACLOCAL_FLAGS"
+     fi
+
       if grep "^AM_GLIB_GNU_GETTEXT" configure.ac >/dev/null; then
        echo "Creating $dr/aclocal.m4 ..."
        test -r $dr/aclocal.m4 || touch $dr/aclocal.m4

=== modified file 'configure.ac'
--- a/configure.ac      2008-09-03 21:46:17 +0000
+++ b/configure.ac      2008-09-08 14:32:27 +0000
@@ -860,10 +860,23 @@
 AM_CONDITIONAL(BUILD_METOME_EXT, [ test x$ext_metome = xyes ])
 AM_CONDITIONAL(BUILD_EXTENSIONS, [ test -n "$extensions_list"])
 
+AC_MSG_CHECKING([For the version of libtool])
+ltver=`${LIBTOOLIZE:-libtoolize} --version | head -1 | cut -d ' ' -f 4`
+ltmajor=`echo $ltver | cut -d '.' -f 1`
+AC_MSG_RESULT([$ltver])
+if test $ltmajor -eq 1; then
 AC_LIBLTDL_INSTALLABLE
 AC_LIBTOOL_DLOPEN
 AC_LIBTOOL_WIN32_DLL
+else
+LT_INIT([dlopen win32-dll])
+LTDL_INIT([nonrecursive])
+fi
 AC_PROG_LIBTOOL
+AM_CONDITIONAL(LIBLTDL2, [test $ltmajor -eq 2])
+AM_CONDITIONAL(INSTALL_LTDL, test x"${enable_ltdl_install-no}" != xno)
+AM_CONDITIONAL(CONVENIENCE_LTDL, test x"${enable_ltdl_convenience-no}" != xno)
+
 AC_C_CONST
 AC_C_INLINE
 AC_SUBST([LIBTOOL_DEPS])
@@ -2112,8 +2125,8 @@
 
AC_CONFIG_LINKS(testsuite/libbase/gnashrc-local:testsuite/libbase/gnashrc-local.in)
 
 AC_OUTPUT(Makefile
+po/Makefile
 libmedia/Makefile
-po/Makefile
 libbase/Makefile
 libcore/Makefile
 libcore/asobj/Makefile

=== modified file 'libbase/Makefile.am'
--- a/libbase/Makefile.am       2008-08-18 23:53:04 +0000
+++ b/libbase/Makefile.am       2008-09-08 15:04:44 +0000
@@ -21,10 +21,13 @@
 pluginsdir = $(prefix)/lib/gnash/plugins
 
 if INSTALL_LTDL
+if LIBLTDL2
+else
 include_HEADERS =  $(top_srcdir)/libltdl/ltdl.h
 LIBLTDLLIB = libltdl.la
 LIBLTDLHEAD =  $(top_srcdir)/libltdl/ltdl.h
 endif
+endif
 
 sysconf_DATA = gnashrc gnashpluginrc
 
@@ -164,7 +167,10 @@
 
 libgnashbase_la_LDFLAGS = -release $(VERSION)
 
-libltdlc_la_CPPFLAGS = $(LTDLINCL)
+if LIBLTDL2
+include $(srcdir)/libltdl.am
+else
+libltdlc_la_CPPFLAGS = $(LTDLINCL) -I$(top_srcdir)/libltdl
 if CONVENIENCE_LTDL
 noinst_LTLIBRARIES = libltdlc.la
 libltdlc_la_SOURCES = $(top_srcdir)/libltdl/ltdl.c
@@ -178,6 +184,7 @@
 if WIN32
   libltdl_la_LDFLAGS += -static
 endif
+endif
 
 # Rebuild with GCC 4.x Mudflap support
 mudflap:

=== added file 'libbase/libltdl.am'
--- a/libbase/libltdl.am        1970-01-01 00:00:00 +0000
+++ b/libbase/libltdl.am        2008-09-08 02:21:50 +0000
@@ -0,0 +1,149 @@
+## Makefile.inc -- includable Makefile.am snippet
+##
+##   Copyright (C) 2003, 2004, 2005, 2007 Free Software Foundation, Inc.
+##   Written by Gary V. Vaughan, 2003
+##
+##   NOTE: The canonical source of this file is maintained with the
+##   GNU Libtool package.  Report bugs to address@hidden
+##
+## GNU Libltdl is free software; you can redistribute it and/or
+## modify it under the terms of the GNU Lesser General Public
+## License as published by the Free Software Foundation; either
+## version 2 of the License, or (at your option) any later version.
+##
+## As a special exception to the GNU Lesser General Public License,
+## if you distribute this file as part of a program or library that
+## is built using GNU libtool, you may include this file under the
+## same distribution terms that you use for the rest of that program.
+##
+## GNU Libltdl is distributed in the hope that it will be useful,
+## but WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+## GNU Lesser General Public License for more details.
+##
+## You should have received a copy of the GNU LesserGeneral Public
+## License along with GNU Libltdl; see the file COPYING.LIB.  If not, a
+## copy can be downloaded from http://www.gnu.org/licenses/lgpl.html,
+## or obtained by writing to the Free Software Foundation, Inc.,
+## 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+#####
+
+## DO NOT REMOVE THIS LINE -- make depends on it
+
+VPATH+=:$(top_srcdir)/libltdl
+
+# -I$(srcdir) is needed for user that built libltdl with a sub-Automake
+# (not as a sub-package!) using 'nostdinc':
+AM_CPPFLAGS           = -DLT_CONFIG_H='<$(LT_CONFIG_H)>' \
+                         -DLTDL -I. -I$(srcdir) -Ilibltdl \
+                         -I$(top_srcdir)/libltdl 
-I$(top_srcdir)/libltdl/libltdl
+AM_LDFLAGS            = -no-undefined
+LTDL_VERSION_INFO      = -version-info 9:0:0
+
+noinst_LTLIBRARIES     = $(LT_DLLOADERS)
+
+if INSTALL_LTDL
+ltdlincludedir         = $(includedir)/libltdl
+ltdlinclude_HEADERS    = $(top_srcdir)/libltdl/libltdl/lt_system.h \
+                         $(top_srcdir)/libltdl/libltdl/lt_error.h \
+                         $(top_srcdir)/libltdl/libltdl/lt_dlloader.h
+include_HEADERS               = $(top_srcdir)/libltdl/ltdl.h
+lib_LTLIBRARIES               = libltdl/libltdl.la
+endif
+
+if CONVENIENCE_LTDL
+noinst_LTLIBRARIES     += libltdl/libltdlc.la
+endif
+
+libltdl_libltdl_la_SOURCES = $(top_srcdir)/libltdl/libltdl/lt__alloc.h \
+                         $(top_srcdir)/libltdl/libltdl/lt__dirent.h \
+                         $(top_srcdir)/libltdl/libltdl/lt__glibc.h \
+                         $(top_srcdir)/libltdl/libltdl/lt__private.h \
+                         $(top_srcdir)/libltdl/libltdl/lt__strl.h \
+                         $(top_srcdir)/libltdl/libltdl/lt_dlloader.h \
+                         $(top_srcdir)/libltdl/libltdl/lt_error.h \
+                         $(top_srcdir)/libltdl/libltdl/lt_system.h \
+                         $(top_srcdir)/libltdl/libltdl/slist.h \
+                         $(top_srcdir)/libltdl/loaders/preopen.c \
+                         $(top_srcdir)/libltdl/lt__alloc.c \
+                         $(top_srcdir)/libltdl/lt_dlloader.c \
+                         $(top_srcdir)/libltdl/lt_error.c \
+                         $(top_srcdir)/libltdl/ltdl.c \
+                         $(top_srcdir)/libltdl/ltdl.h \
+                         $(top_srcdir)/libltdl/slist.c
+
+EXTRA_DIST            += $(top_srcdir)/libltdl/lt__dirent.c \
+                         $(top_srcdir)/libltdl/lt__strl.c
+
+libltdl_libltdl_la_CPPFLAGS    = -DLTDLOPEN=$(LTDLOPEN) $(AM_CPPFLAGS)
+libltdl_libltdl_la_LDFLAGS     = $(AM_LDFLAGS) $(LTDL_VERSION_INFO) 
$(LT_DLPREOPEN)
+libltdl_libltdl_la_LIBADD      = #$(ltdl_LTLIBOBJS)
+libltdl_libltdl_la_DEPENDENCIES        = $(LT_DLLOADERS) # $(ltdl_LTLIBOBJS) 
$(EXTRA_DIST)
+
+libltdl_libltdlc_la_SOURCES    = $(libltdl_libltdl_la_SOURCES)
+libltdl_libltdlc_la_CPPFLAGS   = -DLTDLOPEN=$(LTDLOPEN)c $(AM_CPPFLAGS)
+libltdl_libltdlc_la_LDFLAGS    = $(AM_LDFLAGS) $(LT_DLPREOPEN)
+libltdl_libltdlc_la_LIBADD     = $(libltdl_libltdl_la_LIBADD)
+libltdl_libltdlc_la_DEPENDENCIES= $(libltdl_libltdl_la_DEPENDENCIES)
+
+## The loaders are preopened by libltdl, itself always built from
+## pic-objects (either as a shared library, or a convenience library),
+## so the loaders themselves must be made from pic-objects too.  We
+## use convenience libraries for that purpose:
+EXTRA_LTLIBRARIES              = libltdl/dlopen.la \
+                                 libltdl/dld_link.la \
+                                 libltdl/dyld.la \
+                                 libltdl/load_add_on.la \
+                                 libltdl/loadlibrary.la \
+                                 libltdl/shl_load.la
+
+libltdl_dlopen_la_SOURCES      = $(top_srcdir)/libltdl/loaders/dlopen.c
+libltdl_dlopen_la_LDFLAGS      = -module -avoid-version
+libltdl_dlopen_la_LIBADD       = $(LIBADD_DLOPEN)
+
+libltdl_dld_link_la_SOURCES    = $(top_srcdir)/libltdl/loaders/dld_link.c
+libltdl_dld_link_la_LDFLAGS    = -module -avoid-version
+libltdl_dld_link_la_LIBADD     = -ldld
+
+libltdl_dyld_la_SOURCES                = $(top_srcdir)/libltdl/loaders/dyld.c
+libltdl_dyld_la_LDFLAGS                = -module -avoid-version
+
+libltdl_load_add_on_la_SOURCES = $(top_srcdir)/libltdl/loaders/load_add_on.c
+libltdl_load_add_on_la_LDFLAGS = -module -avoid-version
+
+libltdl_loadlibrary_la_SOURCES = $(top_srcdir)/libltdl/loaders/loadlibrary.c
+libltdl_loadlibrary_la_LDFLAGS = -module -avoid-version
+
+libltdl_shl_load_la_SOURCES    = $(top_srcdir)/libltdl/loaders/shl_load.c
+libltdl_shl_load_la_LDFLAGS    = -module -avoid-version
+libltdl_shl_load_la_LIBADD     = $(LIBADD_SHL_LOAD)
+
+## Make sure these will be cleaned even when they're not built by default:
+CLEANFILES                     = libltdl/libltdl.la \
+                                 libltdl/libltdlc.la \
+                                 libltdl/libdlloader.la
+
+## Automake-1.9.6 doesn't clean subdir AC_LIBOBJ compiled objects
+## automatically:
+CLEANFILES            += $(ltdl_LIBOBJS) $(ltdl_LTLIBOBJS)
+
+EXTRA_DIST            += $(top_srcdir)/libltdl/COPYING.LIB \
+                         $(top_srcdir)/libltdl/README
+
+## --------------------------- ##
+## Gnulib Makefile.am snippets ##
+## --------------------------- ##
+
+BUILT_SOURCES  = $(top_srcdir)/libltdl/$(ARGZ_H)
+EXTRA_DIST     += $(top_srcdir)/libltdl/argz_.h \
+                  $(top_srcdir)/libltdl/argz.c
+
+# We need the following in order to create an <argz.h> when the system
+# doesn't have one that works with the given compiler.
+all-local $(lib_OBJECTS): $(top_srcdir)/libltdl/$(ARGZ_H)
+libltdl/argz.h: libltdl/argz_.h
+       $(mkinstalldirs) . libltdl/
+       cp $(top_srcdir)/libltdl/argz_.h address@hidden
+       mv address@hidden $@
+MOSTLYCLEANFILES = $(top_srcdir)/libltdl/argz.h \
+                   $(top_srcdir)/libltdl/argz.h-t

=== modified file 'macros/libltdl.m4'
--- a/macros/libltdl.m4 2007-07-20 00:50:31 +0000
+++ b/macros/libltdl.m4 2008-09-08 14:32:03 +0000
@@ -6832,3 +6832,12 @@
 
 AC_CHECK_FUNCS([argz_append argz_create_sep argz_insert argz_next 
argz_stringify])
 ])# AC_LTDL_FUNC_ARGZ
+
+dnl compatibility stubs for libtool 2.x, but when using libtool 1.x.
+AC_DEFUN([LT_INIT],
+[AC_MSG_ERROR([You shouldn't be here!])
+])# LT_INIT
+
+AC_DEFUN([LTDL_INIT],
+[AC_MSG_ERROR([You shouldn't be here!])
+])# LTDL_INIT


reply via email to

[Prev in Thread] Current Thread [Next in Thread]