From cac171f4b2c3ec7abb16896bc4f2d56ddedc2e4a Mon Sep 17 00:00:00 2001 From: hyung-hwan Date: Sun, 11 Feb 2024 13:41:32 +0900 Subject: [PATCH] enhanced configure.ac to better support fpc wrapper's linking when findng compiler's builtin libraries such as libgcc or libquadmath --- Makefile.in | 1 + bin/Makefile.in | 1 + configure | 3 +++ configure.ac | 1 + lib/Makefile.in | 1 + mod/Makefile.in | 1 + pas/Makefile.am | 7 ++++++- pas/Makefile.in | 8 +++++++- t/Makefile.in | 1 + 9 files changed, 22 insertions(+), 2 deletions(-) diff --git a/Makefile.in b/Makefile.in index 764d11e..79a2bd1 100644 --- a/Makefile.in +++ b/Makefile.in @@ -252,6 +252,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ FILECMD = @FILECMD@ GREP = @GREP@ +HCL_CONFIGURE_SYS_LIB_SEARCH_PATH_SPEC = @HCL_CONFIGURE_SYS_LIB_SEARCH_PATH_SPEC@ HCL_PROJECT_AUTHOR = @HCL_PROJECT_AUTHOR@ HCL_PROJECT_URL = @HCL_PROJECT_URL@ INSTALL = @INSTALL@ diff --git a/bin/Makefile.in b/bin/Makefile.in index b6a1111..3c663ce 100644 --- a/bin/Makefile.in +++ b/bin/Makefile.in @@ -249,6 +249,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ FILECMD = @FILECMD@ GREP = @GREP@ +HCL_CONFIGURE_SYS_LIB_SEARCH_PATH_SPEC = @HCL_CONFIGURE_SYS_LIB_SEARCH_PATH_SPEC@ HCL_PROJECT_AUTHOR = @HCL_PROJECT_AUTHOR@ HCL_PROJECT_URL = @HCL_PROJECT_URL@ INSTALL = @INSTALL@ diff --git a/configure b/configure index 26eab27..a86eb7e 100755 --- a/configure +++ b/configure @@ -662,6 +662,7 @@ ac_subst_vars='am__EXEEXT_FALSE am__EXEEXT_TRUE LTLIBOBJS LIBOBJS +HCL_CONFIGURE_SYS_LIB_SEARCH_PATH_SPEC HCL_PROJECT_URL HCL_PROJECT_AUTHOR ENABLE_HCLGO_FALSE @@ -18726,6 +18727,8 @@ HCL_PROJECT_AUTHOR="${PACKAGE_BUGREPORT}" HCL_PROJECT_URL="${PACKAGE_URL}" +HCL_CONFIGURE_SYS_LIB_SEARCH_PATH_SPEC="$sys_lib_search_path_spec" + if test `expr " $0" : " '.*"` = 0; then hcl_configure_cmd="'$0'" diff --git a/configure.ac b/configure.ac index f51f7ee..fd858fe 100644 --- a/configure.ac +++ b/configure.ac @@ -674,6 +674,7 @@ AM_CONDITIONAL(ENABLE_HCLGO, test "x${enable_hclgo_is}" = "xyes") dnl ==== subsititution of some key items ==== AC_SUBST(HCL_PROJECT_AUTHOR, "${PACKAGE_BUGREPORT}") AC_SUBST(HCL_PROJECT_URL, "${PACKAGE_URL}") +AC_SUBST(HCL_CONFIGURE_SYS_LIB_SEARCH_PATH_SPEC, ["$sys_lib_search_path_spec"]) dnl === configure arguments if test `expr " [$]0" : " '.*"` = 0; then diff --git a/lib/Makefile.in b/lib/Makefile.in index 581c363..68653e6 100644 --- a/lib/Makefile.in +++ b/lib/Makefile.in @@ -301,6 +301,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ FILECMD = @FILECMD@ GREP = @GREP@ +HCL_CONFIGURE_SYS_LIB_SEARCH_PATH_SPEC = @HCL_CONFIGURE_SYS_LIB_SEARCH_PATH_SPEC@ HCL_PROJECT_AUTHOR = @HCL_PROJECT_AUTHOR@ HCL_PROJECT_URL = @HCL_PROJECT_URL@ INSTALL = @INSTALL@ diff --git a/mod/Makefile.in b/mod/Makefile.in index 4f80ed3..2f19a8e 100644 --- a/mod/Makefile.in +++ b/mod/Makefile.in @@ -270,6 +270,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ FILECMD = @FILECMD@ GREP = @GREP@ +HCL_CONFIGURE_SYS_LIB_SEARCH_PATH_SPEC = @HCL_CONFIGURE_SYS_LIB_SEARCH_PATH_SPEC@ HCL_PROJECT_AUTHOR = @HCL_PROJECT_AUTHOR@ HCL_PROJECT_URL = @HCL_PROJECT_URL@ INSTALL = @INSTALL@ diff --git a/pas/Makefile.am b/pas/Makefile.am index 24cb7b0..967226e 100644 --- a/pas/Makefile.am +++ b/pas/Makefile.am @@ -8,7 +8,12 @@ hcl_DEPENDENCIES = hcl.bin hcl_LINK = cp -pf hcl.bin $(builddir)/hcl$(EXEEXT) || echo hcl.bin: $(hcl_SOURCES) ../lib/libhcl.la $(hcl_OBJECTS) - fpc -o$(builddir)/$@ -g -Mobjfpc -FcUTF8 -Fl../lib -Fl../lib/.libs -Fl/usr/lib/gcc/x86_64-linux-gnu/11 $(srcdir)/main.pas + FL='-Fl../lib:../lib/.libs'; \ + for i in @HCL_CONFIGURE_SYS_LIB_SEARCH_PATH_SPEC@; do \ + FL="$${FL}:$${i}"; \ + done; \ + echo fpc -o$(builddir)/$@ -g -Mobjfpc -FcUTF8 "$${FL}" $(srcdir)/main.pas; \ + fpc -o$(builddir)/$@ -g -Mobjfpc -FcUTF8 "$${FL}" $(srcdir)/main.pas clean-local: rm -f *.ppu *.res hcl.bin diff --git a/pas/Makefile.in b/pas/Makefile.in index 3bc1afe..31a74d4 100644 --- a/pas/Makefile.in +++ b/pas/Makefile.in @@ -201,6 +201,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ FILECMD = @FILECMD@ GREP = @GREP@ +HCL_CONFIGURE_SYS_LIB_SEARCH_PATH_SPEC = @HCL_CONFIGURE_SYS_LIB_SEARCH_PATH_SPEC@ HCL_PROJECT_AUTHOR = @HCL_PROJECT_AUTHOR@ HCL_PROJECT_URL = @HCL_PROJECT_URL@ INSTALL = @INSTALL@ @@ -621,7 +622,12 @@ uninstall-am: uninstall-binPROGRAMS hcl.bin: $(hcl_SOURCES) ../lib/libhcl.la $(hcl_OBJECTS) - fpc -o$(builddir)/$@ -g -Mobjfpc -FcUTF8 -Fl../lib -Fl../lib/.libs -Fl/usr/lib/gcc/x86_64-linux-gnu/11 $(srcdir)/main.pas + FL='-Fl../lib:../lib/.libs'; \ + for i in @HCL_CONFIGURE_SYS_LIB_SEARCH_PATH_SPEC@; do \ + FL="$${FL}:$${i}"; \ + done; \ + echo fpc -o$(builddir)/$@ -g -Mobjfpc -FcUTF8 "$${FL}" $(srcdir)/main.pas; \ + fpc -o$(builddir)/$@ -g -Mobjfpc -FcUTF8 "$${FL}" $(srcdir)/main.pas clean-local: rm -f *.ppu *.res hcl.bin diff --git a/t/Makefile.in b/t/Makefile.in index f8aadb6..efa4d19 100644 --- a/t/Makefile.in +++ b/t/Makefile.in @@ -364,6 +364,7 @@ EXEEXT = @EXEEXT@ FGREP = @FGREP@ FILECMD = @FILECMD@ GREP = @GREP@ +HCL_CONFIGURE_SYS_LIB_SEARCH_PATH_SPEC = @HCL_CONFIGURE_SYS_LIB_SEARCH_PATH_SPEC@ HCL_PROJECT_AUTHOR = @HCL_PROJECT_AUTHOR@ HCL_PROJECT_URL = @HCL_PROJECT_URL@ INSTALL = @INSTALL@