summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--configure.ac19
-rw-r--r--mk/config.mk.in9
-rw-r--r--rules/build-package-data.mk8
3 files changed, 36 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac
index 14d8710c07..41e6c3f9f8 100644
--- a/configure.ac
+++ b/configure.ac
@@ -193,6 +193,25 @@ AC_SUBST([WithGhc])
dnl ** Without optimization some INLINE trickery fails for GHCi
SRC_CC_OPTS="-O"
+dnl Allow to specify iconv options to the toplevel configure script
+dnl so they can be properly passed to sub-builds.
+dnl Note: ICONV_LIB_DIRS and ICONV_INCLUDE_DIRS are not predefined
+dnl to the empty string to allow them to be overridden from the
+dnl environment.
+
+AC_ARG_WITH([iconv-includes],
+ [AC_HELP_STRING([--with-iconv-includes],
+ [directory containing iconv.h])],
+ [ICONV_INCLUDE_DIRS=$withval])
+
+AC_ARG_WITH([iconv-libraries],
+ [AC_HELP_STRING([--with-iconv-libraries],
+ [directory containing iconv library])],
+ [ICONV_LIB_DIRS=$withval])
+
+AC_SUBST(ICONV_INCLUDE_DIRS)
+AC_SUBST(ICONV_LIB_DIRS)
+
dnl--------------------------------------------------------------------
dnl * Choose host(/target/build) platform
dnl--------------------------------------------------------------------
diff --git a/mk/config.mk.in b/mk/config.mk.in
index a8b57fb312..a516e6da77 100644
--- a/mk/config.mk.in
+++ b/mk/config.mk.in
@@ -946,6 +946,15 @@ CONFIGURE_ARGS = @CONFIGURE_ARGS@
################################################################################
#
+# To be passed to sub-builds
+#
+################################################################################
+
+ICONV_INCLUDE_DIRS = @ICONV_INCLUDE_DIRS@
+ICONV_LIB_DIRS = @ICONV_LIB_DIRS@
+
+################################################################################
+#
# Bindist testing directory
#
################################################################################
diff --git a/rules/build-package-data.mk b/rules/build-package-data.mk
index 6c3b1b0916..47bed79ee0 100644
--- a/rules/build-package-data.mk
+++ b/rules/build-package-data.mk
@@ -30,6 +30,14 @@ endif
$1_$2_CONFIGURE_OPTS += --configure-option=CFLAGS="$$(filter-out -Werror,$$(SRC_CC_OPTS)) $$($1_CC_OPTS) $$($1_$2_CC_OPTS)"
$1_$2_CONFIGURE_OPTS += --configure-option=LDFLAGS="$$(SRC_LD_OPTS) $$($1_LD_OPTS) $$($1_$2_LD_OPTS)"
+ifneq "$$(ICONV_INCLUDE_DIRS)" ""
+$1_$2_CONFIGURE_OPTS += --configure-option=--with-iconv-includes="$$(ICONV_INCLUDE_DIRS)"
+endif
+
+ifneq "$$(ICONV_LIB_DIRS)" ""
+$1_$2_CONFIGURE_OPTS += --configure-option=--with-iconv-libraries="$$(ICONV_LIB_DIRS)"
+endif
+
# This rule configures the package, generates the package-data.mk file
# for our build system, and registers the package for use in-place in
# the build tree.