diff -ur hercules-3.06.orig/bootstrap.c hercules-3.06/bootstrap.c --- hercules-3.06.orig/bootstrap.c 2008-08-08 02:06:13.000000000 +0300 +++ hercules-3.06/bootstrap.c 2010-03-05 23:22:39.000000000 +0200 @@ -23,7 +23,7 @@ #include "hstdinc.h" #include "hercules.h" #if defined(HDL_USE_LIBTOOL) -#include "ltdl.h" +#include #endif /////////////////////////////////////////////////////////////////////////////// diff -ur hercules-3.06.orig/configure.ac hercules-3.06/configure.ac --- hercules-3.06.orig/configure.ac 2009-01-09 18:31:25.000000000 +0200 +++ hercules-3.06/configure.ac 2010-03-05 23:15:59.000000000 +0200 @@ -115,154 +115,8 @@ modexecdir=${libdir}/${PACKAGE} AC_SUBST(modexecdir) - -# ----------------------------------------------------------------------------- -# -# AC_LIBTOOL_DLOPEN -# -# Enable checking for dlopen support. This macro should be used if the -# package makes use of the '-dlopen' and '-dlpreopen' flags, otherwise -# libtool will assume that the system does not support dlopening. The -# macro must be called before AC_PROG_LIBTOOL. -# -# ----------------------------------------------------------------------------- - -AC_LIBTOOL_DLOPEN() # (we need libtool's dlopen support) - - -# ----------------------------------------------------------------------------- -# -# AC_LIBTOOL_WIN32_DLL -# -# This macro should be used if the package has been ported to build -# clean dlls on win32 platforms. Usually this means that any library -# data items are exported with __declspec(dllexport) and imported with -# __declspec(dllimport). If this macro is not used, libtool will assume -# that the package libraries are not dll clean and will build only static -# libraries on win32 hosts. -# -# This macro must be called before AC_PROG_LIBTOOL, and provision must -# be made to pass '-no-undefined' to libtool in link mode from the package -# Makefile. Naturally, if you pass '-no-undefined', you must ensure that -# all the library symbols really are defined at link time! -# -# ----------------------------------------------------------------------------- - -AC_LIBTOOL_WIN32_DLL() # (we need Win32 support in libtool) - - -# ----------------------------------------------------------------------------- -# See: 'AC_PROG_LIBTOOL' below. -# ----------------------------------------------------------------------------- - -AC_DISABLE_STATIC() # (forces libtool to build shared - - # libraries instead of static ones) -# ----------------------------------------------------------------------------- -# AC_PROG_LIBTOOL -# -# Add support for the '--enable-shared' and '--disable-shared' -# configure flags. By default, this macro turns on shared libraries -# if they are available, and also enables static libraries if they -# don't conflict with the shared libraries. You can modify these -# defaults by calling either the AC_DISABLE_SHARED or AC_DISABLE_STATIC -# macros. -# -# Hercules REQUIRES shared libraries (i.e. DLLs), so we do indeed use -# the AC_DISABLE_STATIC macro above. -# -# ----------------------------------------------------------------------------- - -AC_PROG_LIBTOOL() # (we build libtool for ourselves) - - -# ----------------------------------------------------------------------------- -# -# AC_LIB_LTDL -# -# Even though libltdl is installed together with libtool, you may wish -# to include libltdl in the distribution of your package, for the convenience -# of users of your package that don't have libtool or libltdl installed. -# -# The most simplistic way to add libltdl to your package is to copy the -# source files, 'ltdl.c' and 'ltdl.h', to a source directory withing your -# package and to build and link them along with the rest of your sources. -# -# To do this, you must add a call to the 'AC_LIB_LTDL' macro to your package's -# 'configure.in' to perform the required configure time checks in order that -# 'ltdl.o' is built correctly. -# -# This method does have its problems though: if you try to link the package -# binaries with an installed libltdl, or a library which depends on libltdl, -# you may have problems with duplicate symbol definitions. -# -# In order to enable this flavor of libltdl, you should add the line -# 'AC_LIBLTDL_CONVENIENCE' to your `configure.in', before 'AC_PROG_LIBTOOL'. -# -# In order to select the installable version of libltdl, you should add a -# call of the macro 'AC_LIBLTDL_INSTALLABLE' to your 'configure.in' before -# 'AC_PROG_LIBTOOL'. This macro will check whether libltdl is already -# installed and, if not, request the libltdl embedded in your package to be -# built and installed. -# -# Whatever macro you use, it is up to you to ensure that your 'configure.in' -# will configure libltdl, using 'AC_CONFIG_SUBDIRS', and that your 'Makefile's -# will start sub-makes within libltdl's directory, using automake's SUBDIRS, -# for example. Both macros define the shell variables LIBLTDL, to the link flag -# that you should use to link with libltdl, and LTDLINCL, to the preprocessor -# flag that you should use to compile with programs that include 'ltdl.h'. It -# is up to you to use 'AC_SUBST' to ensure that this variable will be available -# in 'Makefile's, or add them to variables that are 'AC_SUBST'ed by default, -# such as LIBS and CPPFLAGS. -# -# So, when you want to link a program with libltdl, be it a convenience, -# installed or installable library, just compile with '$(LTDLINCL)' and link -# it with '$(LIBLTDL)', using libtool. -# -# You should probably also add 'AC_LIBTOOL_DLOPEN' to your 'configure.in' before -# 'AC_PROG_LIBTOOL', otherwise libtool will assume no dlopening mechanism is -# supported, and revert to dlpreopening, which is probably not what you want. -# -# The following example shows you how to embed the convenience libltdl -# in your package. In order to use the installable variant just replace -# 'AC_LIBLTDL_CONVENIENCE' with 'AC_LIBLTDL_INSTALLABLE'. We assume that libltdl -# was embedded using 'libtoolize --ltdl': -# -# configure.in: -# -# ... -# dnl Enable building of the convenience library -# dnl and set LIBLTDL accordingly -# AC_LIBLTDL_CONVENIENCE -# dnl Substitute LTDLINCL and LIBLTDL in the Makefiles -# AC_SUBST(LTDLINCL) -# AC_SUBST(LIBLTDL) -# dnl Check for dlopen support -# AC_LIBTOOL_DLOPEN -# dnl Configure libtool -# AC_PROG_LIBTOOL -# dnl Configure libltdl -# AC_CONFIG_SUBDIRS(libltdl) -# ... -# -# Makefile.am: -# -# ... -# SUBDIRS = libltdl -# -# INCLUDES = $(LTDLINCL) -# -# myprog_LDFLAGS = -export-dynamic -# # The quotes around -dlopen below fool automake <= 1.4 into accepting it -# myprog_LDADD = $(LIBLTDL) "-dlopen" self "-dlopen" foo1.la -# myprog_DEPENDENCIES = $(LIBLTDL) foo1.la -# ... -# -# ----------------------------------------------------------------------------- - -AC_LIB_LTDL() # (we need the ltdl libtool library) -AC_SUBST([LIBTOOL_DEPS]) # (see PROGRAMMING NOTE above) - +LT_PREREQ([2.2.6]) +LT_INIT([dlopen win32-dll disable-static]) # ----------------------------------------------------------------------------- # (See comments in the 'AC_CHECK_LIB' Libraries section further below) diff -ur hercules-3.06.orig/crypto/Makefile.am hercules-3.06/crypto/Makefile.am --- hercules-3.06.orig/crypto/Makefile.am 2006-12-08 11:43:34.000000000 +0200 +++ hercules-3.06/crypto/Makefile.am 2010-03-05 23:25:22.000000000 +0200 @@ -26,7 +26,6 @@ if OPTION_DYNAMIC_LOAD DYNSRC = - LTDL = ../ltdl.c DYNMOD_LD_FLAGS = -module \ -no-undefined \ @@ -34,7 +33,7 @@ -export-dynamic \ -avoid-version - DYNMOD_LD_ADD = $(LDADD) + DYNMOD_LD_ADD = $(LDADD) -lltdl LIB_LD_FLAGS = -export-dynamic \ $(XSTATIC) \ @@ -42,7 +41,6 @@ -avoid-version else DYNSRC = $(dyndev_SRC) - LTDL = DYNMOD_LD_FLAGS = DYNMOD_LD_ADD = LIB_LD_FLAGS = $(XSTATIC) \ diff -ur hercules-3.06.orig/decNumber/Makefile.am hercules-3.06/decNumber/Makefile.am --- hercules-3.06.orig/decNumber/Makefile.am 2006-12-30 20:31:08.000000000 +0200 +++ hercules-3.06/decNumber/Makefile.am 2010-03-05 23:25:50.000000000 +0200 @@ -40,13 +40,13 @@ endif if OPTION_DYNAMIC_LOAD - LTDL = ../ltdl.c + LIB_LD_ADD = -lltdl LIB_LD_FLAGS = -export-dynamic \ $(XSTATIC) \ -no-undefined \ -avoid-version else - LTDL = + LIB_LD_ADD = LIB_LD_FLAGS = $(XSTATIC) \ -no-undefined \ -avoid-version @@ -59,7 +59,7 @@ libdecNumber_la_SOURCES = $(decNumber_SRC) libdecNumber_la_LDFLAGS = $(LIB_LD_FLAGS) - libdecNumber_la_LIBADD = $(LDADD) + libdecNumber_la_LIBADD = $(LDADD) $(LIB_LD_ADD) noinst_HEADERS = decContext.h \ decDPD.h \ diff -ur hercules-3.06.orig/herclin.c hercules-3.06/herclin.c --- hercules-3.06.orig/herclin.c 2007-06-23 03:04:10.000000000 +0300 +++ hercules-3.06/herclin.c 2010-03-05 23:22:19.000000000 +0200 @@ -33,7 +33,7 @@ /* This must be included if HDL uses the */ /* libtool ltdl convenience library */ -#include "ltdl.h" +#include #endif diff -ur hercules-3.06.orig/Makefile.am hercules-3.06/Makefile.am --- hercules-3.06.orig/Makefile.am 2009-01-04 22:14:46.000000000 +0200 +++ hercules-3.06/Makefile.am 2010-03-05 23:22:03.000000000 +0200 @@ -171,7 +171,6 @@ if OPTION_DYNAMIC_LOAD DYNSRC = - LTDL = ltdl.c DYNMOD_LD_FLAGS = -module \ -no-undefined \ @@ -182,7 +181,8 @@ DYNMOD_LD_ADD = libherc.la \ libhercs.la \ libhercu.la \ - $(LDADD) + $(LDADD) \ + -lltdl LIB_LD_FLAGS = -export-dynamic \ $(XSTATIC) \ @@ -190,7 +190,6 @@ -avoid-version else DYNSRC = $(dyndev_SRC) - LTDL = DYNMOD_LD_FLAGS = DYNMOD_LD_ADD = LIB_LD_FLAGS = $(XSTATIC) \ @@ -364,12 +363,11 @@ parser.c \ pttrace.c \ $(FTHREADS) \ - $(FISHHANG) \ - $(LTDL) + $(FISHHANG) libhercu_la_LDFLAGS = $(LIB_LD_FLAGS) - libhercu_la_LIBADD = $(LDADD) libhercs.la + libhercu_la_LIBADD = $(LDADD) libhercs.la $(DYNMOD_LD_ADD) # # Core Hercules (shared) library @@ -440,8 +438,7 @@ memrchr.c \ $(dynamic_SRC) \ $(extra_SRC) \ - $(dyndev_SRC) \ - ltdl.c + $(dyndev_SRC) libherc_la_LDFLAGS = $(LIB_LD_FLAGS) @@ -450,7 +447,8 @@ libherct.la \ libhercd.la \ decNumber/libdecNumber.la \ - $(LDADD) + $(LDADD) \ + $(DYNMOD_LD_ADD) # # THIS is the hercules executable. @@ -728,7 +726,6 @@ hdl.h \ crypto.h \ sockdev.h \ - ltdl.h \ herc_getopt.h \ service.h \ chsc.h \