diff --git a/bindings/Makefile.am b/bindings/Makefile.am index f9f17d567..7e2647945 100644 --- a/bindings/Makefile.am +++ b/bindings/Makefile.am @@ -149,8 +149,9 @@ PKG_VER = $(ABI_VERSION).$(ABI_REVISION) DLL = hamlibtcl-$(PKG_VER)$(TCL_SHLIB_SUFFIX) nodist_hamlibtcl_la_SOURCES = hamlibtcl_wrap.c +hamlibtcl_la_CFLAGS = $(TCL_CFLAGS) hamlibtcl_la_LDFLAGS = -no-undefined -module -release $(PKG_VER) -avoid-version -hamlibtcl_la_LIBADD = $(top_builddir)/src/libhamlib.la $(TCL_LIB_SPEC) +hamlibtcl_la_LIBADD = $(top_builddir)/src/libhamlib.la $(TCL_LIB_SPEC) $(TCL_LIBS) hamlibtcl_ladir = $(tcldir) hamlibtcl_la_DATA = pkgIndex.tcl diff --git a/configure.ac b/configure.ac index f58eb0925..ab6e120f7 100644 --- a/configure.ac +++ b/configure.ac @@ -589,11 +589,16 @@ AC_ARG_WITH([tcl-binding], [build_tcl=no]) AC_MSG_RESULT([$build_tcl]) -dnl SC_PATH_TCLCONFIG and SC_LOAD_TCLCONFIG from macros/tcl.m4 +dnl tcl.pc or SC_PATH_TCLCONFIG and SC_LOAD_TCLCONFIG from macros/tcl.m4 AS_IF([test x"${build_tcl}" = "xyes"],[ - dnl Search for and load tclConfig.sh. - SC_PATH_TCLCONFIG - SC_LOAD_TCLCONFIG + dnl Search for and load tcl.pc or tclConfig.sh. + PKG_CHECK_MODULES([TCL], [tcl], + [], + [ + AC_MSG_WARN([Unable to find Tcl pkgconfig]) + SC_PATH_TCLCONFIG + SC_LOAD_TCLCONFIG + ]) tcl_save_CPPFLAGS=$CPPFLAGS CPPFLAGS="$CPPFLAGS $TCL_INCLUDE_SPEC" @@ -617,6 +622,9 @@ AC_SUBST([TCL_VERSION]) AC_SUBST([TCL_LIB_SPEC]) AC_SUBST([TCL_INCLUDE_SPEC]) AC_SUBST([TCL_SHLIB_SUFFIX]) +dnl These variables are set once tcl.pc is found. +AC_SUBST([TCL_LIBS]) +AC_SUBST([TCL_CFLAGS]) dnl Check for lua availability, so we can enable HamlibLua diff --git a/macros/tcl.m4 b/macros/tcl.m4 index feed05ce3..c1d308cf4 100644 --- a/macros/tcl.m4 +++ b/macros/tcl.m4 @@ -130,6 +130,7 @@ AC_DEFUN([SC_LOAD_TCLCONFIG], [ . $TCL_BIN_DIR/tclConfig.sh else AC_MSG_RESULT([file not found]) + AC_MSG_ERROR([failed to load tclConfig.sh]) fi #