diff options
author | V3n3RiX <venerix@koprulu.sector> | 2024-05-09 00:01:03 +0100 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2024-05-09 00:01:03 +0100 |
commit | a0ce545d52f231499bf9f3644493113d8af58ec9 (patch) | |
tree | 4d67c09eed0c2ae28d1317f72d7f7b08b4f6aeea /app-emulation/hercules-sdl/files | |
parent | 5181ced3f3566a9610b85922b083c8f84f20d78f (diff) |
gentoo auto-resync : 09:05:2024 - 00:01:03
Diffstat (limited to 'app-emulation/hercules-sdl/files')
7 files changed, 686 insertions, 0 deletions
diff --git a/app-emulation/hercules-sdl/files/gen_hashes.sh b/app-emulation/hercules-sdl/files/gen_hashes.sh new file mode 100644 index 000000000000..bb499392a4a5 --- /dev/null +++ b/app-emulation/hercules-sdl/files/gen_hashes.sh @@ -0,0 +1,24 @@ +#!/usr/bin/env bash + +[[ -z "${1}" ]] && exit 1 +[[ "${1}" =~ [0-9]+\.[0-9]+\.[0-9]+ ]] || exit 1 + +CLONEDIR="$(mktemp -d)" +for f in "hyperion" "crypto" "decNumber" "SoftFloat" "telnet" +do + git -C "${CLONEDIR}" clone --tags "https://github.com/SDL-Hercules-390/${f}" +done + +VERSIONARR=( ${1//./ }) +VERSIONTAG="Release_${VERSIONARR[0]}.${VERSIONARR[1]}" +[[ "${VERSIONARR[2]}" == "0" ]] || VERSIONTAG=".${VERSIONARR[2]}" +RELEASEDATE="$(git -C "${CLONEDIR}/hyperion" show -s --format="%ci" "${VERSIONTAG}")" + +echo +for f in "crypto" "decNumber" "SoftFloat" "telnet" +do + echo -n "${f,,}: " + git -C "${CLONEDIR}/${f}" rev-list -n 1 --first-parent --before="${RELEASEDATE}" master +done + +rm -rf "${CLONEDIR}" diff --git a/app-emulation/hercules-sdl/files/hercules-3.13-htmldir.patch b/app-emulation/hercules-sdl/files/hercules-3.13-htmldir.patch new file mode 100644 index 000000000000..962611b87edd --- /dev/null +++ b/app-emulation/hercules-sdl/files/hercules-3.13-htmldir.patch @@ -0,0 +1,25 @@ +--- a/html/Makefile.am ++++ b/html/Makefile.am +@@ -1,4 +1,4 @@ +-dist_pkgdata_DATA = cckddasd.html fishgui.html hercconf.html hercfaq.html \ ++dist_html_DATA = cckddasd.html fishgui.html hercconf.html hercfaq.html \ + hercinst.html herclic.html hercload.html hercmsca.html hercmscf.html \ + hercmscp.html hercmsct.html hercmscu.html hercmsda.html hercmsdc.html \ + hercmsdg.html hercmsdi.html hercmsdl.html hercmsds.html hercmsdt.html \ +@@ -12,7 +12,7 @@ + + include_sources = include/header.htmlpart include/footer.htmlpart + +-include_pkgdatadir = $(pkgdatadir)/include ++include_pkgdatadir = $(htmldir)/include + + dist_include_pkgdata_DATA = $(include_sources) + +@@ -33,6 +33,6 @@ + images/interruptu.gif images/redu.gif images/waitonu.gif \ + images/loadd.gif images/restartd.gif + +-images_pkgdatadir = $(pkgdatadir)/images ++images_pkgdatadir = $(htmldir)/images + + dist_images_pkgdata_DATA = $(images_sources) diff --git a/app-emulation/hercules-sdl/files/hercules-3.13-posix-test.patch b/app-emulation/hercules-sdl/files/hercules-3.13-posix-test.patch new file mode 100644 index 000000000000..abee4b0cc5ed --- /dev/null +++ b/app-emulation/hercules-sdl/files/hercules-3.13-posix-test.patch @@ -0,0 +1,29 @@ +https://github.com/rbowler/spinhawk/pull/106 + +From 9a9f7182069b8fe0483383c177882218244bad16 Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vapier@gentoo.org> +Date: Thu, 18 Nov 2021 02:32:02 -0500 +Subject: [PATCH] avoid bashism in test call + +POSIX test only supports =, not ==. +--- + autoconf/hercules.m4 | 2 +- + configure.ac | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/configure.ac b/configure.ac +index f12d47058562..8dd420af8d13 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -562,7 +562,7 @@ AC_CHECK_DECLS( SIOCADDRT, [hc_cv_have_siocaddrt=yes], [hc_ + AC_CHECK_DECLS( SIOCDELRT, [hc_cv_have_siocdelrt=yes], [hc_cv_have_siocdelrt=no], [#include <linux/sockios.h>] ) + AC_CHECK_DECLS( SIOCDIFADDR, [hc_cv_have_siocdifaddr=yes], [hc_cv_have_siocdifaddr=no], [#include <linux/sockios.h>] ) + +-if test "$hc_cv_have_sys_mtio_h" == "yes"; then ++if test "$hc_cv_have_sys_mtio_h" = "yes"; then + AC_CHECK_DECLS( MTEWARN, [hc_cv_have_mtewarn=yes], [hc_cv_have_mtewarn=no], [#include <sys/mtio.h>] ) + else + hc_cv_have_mtewarn=no +-- +2.33.0 + diff --git a/app-emulation/hercules-sdl/files/hercules-3.13-unbundle-libltdl.patch b/app-emulation/hercules-sdl/files/hercules-3.13-unbundle-libltdl.patch new file mode 100644 index 000000000000..c96831d96ad2 --- /dev/null +++ b/app-emulation/hercules-sdl/files/hercules-3.13-unbundle-libltdl.patch @@ -0,0 +1,379 @@ +--- a/bootstrap.c ++++ b/bootstrap.c +@@ -11,7 +11,7 @@ + #include "hstdinc.h" + #include "hercules.h" + #if defined(HDL_USE_LIBTOOL) +-#include "ltdl.h" ++#include <ltdl.h> + #endif + + #if !defined( _MSVC_ ) +--- a/configure.ac ++++ b/configure.ac +@@ -12,7 +12,7 @@ + AC_REVISION($Revision$) # (the version of this configure.ac) + AC_CONFIG_AUX_DIR(autoconf) # (directory containing auxillary build tools) + AM_INIT_AUTOMAKE(hercules,3.13) # (the version of our software package) +-AM_CONFIG_HEADER(config.h) # (the file the resulting configure script will produce) ++AC_CONFIG_HEADERS(config.h) # (the file the resulting configure script will produce) + AM_MAINTAINER_MODE() + AC_CANONICAL_HOST() # (sets $host_cpu, $host_vendor, and $host_os) + m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) +@@ -38,154 +38,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) +--- a/crypto/Makefile.am ++++ b/crypto/Makefile.am +@@ -23,7 +23,6 @@ + + if OPTION_DYNAMIC_LOAD + DYNSRC = +- LTDL = ../ltdl.c + + DYNMOD_LD_FLAGS = -module \ + -no-undefined \ +@@ -31,7 +30,7 @@ + -export-dynamic \ + -avoid-version + +- DYNMOD_LD_ADD = $(LDADD) ++ DYNMOD_LD_ADD = $(LDADD) -lltdl + + LIB_LD_FLAGS = -export-dynamic \ + $(XSTATIC) \ +@@ -39,7 +38,6 @@ + -avoid-version + else + DYNSRC = $(dyndev_SRC) +- LTDL = + DYNMOD_LD_FLAGS = + DYNMOD_LD_ADD = + LIB_LD_FLAGS = $(XSTATIC) \ +--- a/decNumber/Makefile.am ++++ b/decNumber/Makefile.am +@@ -37,13 +37,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 +@@ -56,7 +56,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 \ +--- a/fillfnam.c ++++ b/fillfnam.c +@@ -5,6 +5,8 @@ + #include "hercules.h" + #include "fillfnam.h" + ++#include <dirent.h> ++ + /* On Solaris 2.9 (SunOS 5.9) and earlier, there is no scandir + and alphasort function. In this case fillfnam does nothing + and the tab command is effectively a no-operation */ +--- a/herclin.c ++++ b/herclin.c +@@ -26,7 +26,7 @@ + /* This must be included if HDL uses the */ + /* libtool ltdl convenience library */ + +-#include "ltdl.h" ++#include <ltdl.h> + #endif + + +--- a/Makefile.am ++++ b/Makefile.am +@@ -98,7 +98,7 @@ + + if OPTION_DYNAMIC_LOAD + DYNSRC = +- LTDL = ltdl.c ++ LIB_LD_ADD = -lltdl + + DYNMOD_LD_FLAGS = -module \ + -no-undefined \ +@@ -109,7 +109,8 @@ + DYNMOD_LD_ADD = libherc.la \ + libhercs.la \ + libhercu.la \ +- $(LDADD) ++ $(LDADD) \ ++ $(LIB_LD_ADD) + + LIB_LD_FLAGS = -export-dynamic \ + $(XSTATIC) \ +@@ -117,7 +118,6 @@ + -avoid-version + else + DYNSRC = $(dyndev_SRC) +- LTDL = + DYNMOD_LD_FLAGS = + DYNMOD_LD_ADD = + LIB_LD_FLAGS = $(XSTATIC) \ +@@ -295,12 +295,11 @@ + memrchr.c \ + parser.c \ + pttrace.c \ +- $(FTHREADS) \ +- $(LTDL) ++ $(FTHREADS) + + libhercu_la_LDFLAGS = $(LIB_LD_FLAGS) + +- libhercu_la_LIBADD = $(LDADD) libhercs.la ++ libhercu_la_LIBADD = $(LDADD) libhercs.la $(LIB_LD_ADD) + + # + # Core Hercules (shared) library +@@ -372,8 +371,7 @@ + memrchr.c \ + $(dynamic_SRC) \ + $(extra_SRC) \ +- $(dyndev_SRC) \ +- ltdl.c ++ $(dyndev_SRC) + + libherc_la_LDFLAGS = $(LIB_LD_FLAGS) + +@@ -383,7 +381,8 @@ + libhercd.la \ + decNumber/libdecNumber.la \ + softfloat/libsoftfloat.la \ +- $(LDADD) ++ $(LDADD) \ ++ $(LIB_LD_ADD) + + # + # THIS is the hercules executable. +@@ -440,7 +439,7 @@ + hercules_SOURCES = bootstrap.c \ + hdlmain.c + +- hercules_LDADD = libherc.la libhercs.la $(LDADD) ++ hercules_LDADD = libherc.la libhercs.la $(LDADD) $(LIB_LD_ADD) + + hercules_LDFLAGS = $(HLDFLAGS) + +@@ -656,7 +655,6 @@ + hdl.h \ + crypto.h \ + sockdev.h \ +- ltdl.h \ + herc_getopt.h \ + service.h \ + chsc.h \ +--- a/softfloat/Makefile.am ++++ b/softfloat/Makefile.am +@@ -22,13 +22,11 @@ + endif + + if OPTION_DYNAMIC_LOAD +- LTDL = ../ltdl.c + LIB_LD_FLAGS = -export-dynamic \ + $(XSTATIC) \ + -no-undefined \ + -avoid-version + else +- LTDL = + LIB_LD_FLAGS = $(XSTATIC) \ + -no-undefined \ + -avoid-version +--- a/autoconf/hercules.m4 ++++ b/autoconf/hercules.m4 +@@ -270,7 +270,7 @@ + + else + +- if test $(./libtool --features | fgrep "enable shared libraries" | wc -l) -ne 1; then ++ if test "$enable_shared" != "yes"; then + + # Libtool doesn't support shared libraries, + # and thus our wrapper kludge is not needed. +@@ -280,11 +280,11 @@ + } + DUPGETOPT2 + +- ./libtool --mode=compile ${CC-cc} conftest1.c -c -o conftest1.lo > /dev/null 2>&1 +- ./libtool --mode=compile ${CC-cc} conftest2.c -c -o conftest2.lo > /dev/null 2>&1 ++ libtool --mode=compile ${CC-cc} conftest1.c -c -o conftest1.lo > /dev/null 2>&1 ++ libtool --mode=compile ${CC-cc} conftest2.c -c -o conftest2.lo > /dev/null 2>&1 + +- ./libtool --mode=link ${CC-cc} -shared -rpath /lib -no-undefined conftest1.lo -o libconftest1.la > /dev/null 2>&1 +- ./libtool --mode=link ${CC-cc} -shared -rpath /lib -no-undefined conftest2.lo libconftest1.la -o libconftest2.la > /dev/null 2>&1 ++ libtool --mode=link ${CC-cc} -shared -rpath /lib -no-undefined conftest1.lo -o libconftest1.la > /dev/null 2>&1 ++ libtool --mode=link ${CC-cc} -shared -rpath /lib -no-undefined conftest2.lo libconftest1.la -o libconftest2.la > /dev/null 2>&1 + + if test $? = 0; then + diff --git a/app-emulation/hercules-sdl/files/hercules-3.13-user-install.patch b/app-emulation/hercules-sdl/files/hercules-3.13-user-install.patch new file mode 100644 index 000000000000..bcde1181e873 --- /dev/null +++ b/app-emulation/hercules-sdl/files/hercules-3.13-user-install.patch @@ -0,0 +1,21 @@ +the ebuild will handle these, so no need to do it directly which will fail when +building as non-root. + +--- a/Makefile.am ++++ b/Makefile.am +@@ -730,15 +730,6 @@ endif + (cd $(DESTDIR)$(bindir); @LN_S@ ./dasdcopy$(EXEEXT) cfba2fba$(EXEEXT)) + rm -f $(DESTDIR)$(bindir)/cckd2ckd$(EXEEXT) + (cd $(DESTDIR)$(bindir); @LN_S@ ./dasdcopy$(EXEEXT) cckd2ckd$(EXEEXT)) +-if SETUID_HERCIFC +- chown root $(DESTDIR)$(bindir)/hercifc +-if HERCIFC_GROUPSET +- chgrp $(HERCIFC_GROUPNAME) $(DESTDIR)$(bindir)/hercifc +-endif +- chmod 0750 $(DESTDIR)$(bindir)/hercifc +- chmod +s $(DESTDIR)$(bindir)/hercifc +- rm hercifc +-endif + + uninstall-local: + diff --git a/app-emulation/hercules-sdl/files/hercules-sdl-4.4.1-htmldir.patch b/app-emulation/hercules-sdl/files/hercules-sdl-4.4.1-htmldir.patch new file mode 100644 index 000000000000..50b30cca91dd --- /dev/null +++ b/app-emulation/hercules-sdl/files/hercules-sdl-4.4.1-htmldir.patch @@ -0,0 +1,29 @@ +diff --git a/html/Makefile.am b/html/Makefile.am +index b4d21d0..1e5af4c 100644 +--- a/html/Makefile.am ++++ b/html/Makefile.am +@@ -1,5 +1,5 @@ + +-dist_pkgdata_DATA = \ ++dist_html_DATA = \ + cckddasd.html \ + fishgui.html \ + hercconf.html \ +@@ -62,7 +62,7 @@ include_sources = \ + include/footer.htmlpart \ + include/header.htmlpart + +-include_pkgdatadir = $(pkgdatadir)/include ++include_pkgdatadir = $(htmldir)/include + + dist_include_pkgdata_DATA = $(include_sources) + +@@ -120,7 +120,7 @@ images_sources = \ + images/waitoffu.gif \ + images/waitonu.gif + +-images_pkgdatadir = $(pkgdatadir)/images ++images_pkgdatadir = $(htmldir)/images + + dist_images_pkgdata_DATA = $(images_sources) + diff --git a/app-emulation/hercules-sdl/files/hercules-sdl-4.4.1-unbundle-libltdl.patch b/app-emulation/hercules-sdl/files/hercules-sdl-4.4.1-unbundle-libltdl.patch new file mode 100644 index 000000000000..e5bb86fbebcf --- /dev/null +++ b/app-emulation/hercules-sdl/files/hercules-sdl-4.4.1-unbundle-libltdl.patch @@ -0,0 +1,179 @@ +diff --git a/autoconf/hercules.m4 b/autoconf/hercules.m4 +index cb962f5..31d641c 100755 +--- a/autoconf/hercules.m4 ++++ b/autoconf/hercules.m4 +@@ -263,7 +263,7 @@ AC_DEFUN([_HC_CHECK_NEED_GETOPT_WRAPPER], + + else + +- if test $(libtool --features | fgrep "enable shared libraries" | wc -l) -ne 1; then ++ if test "$enable_shared" != "yes"; then + + # Libtool doesn't support shared libraries, + # and thus our wrapper kludge is not needed. +diff --git a/configure.ac b/configure.ac +index c657251..af23407 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -325,41 +325,6 @@ fi + 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) +- + # ----------------------------------------------------------------------------- + # This is a hack: + # +@@ -395,117 +360,8 @@ case $host_os in + ;; + esac + +-# ----------------------------------------------------------------------------- +-# 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) |