[PATCH] toplevel: fixes for in-tree libiconv

Yaakov Selkowitz
2015-05-29T21:14:05Z

[-- Attachment #1: Type: text/plain, Size: 293 bytes --]

This is the first in a series of patches to make a build with an in-tree
GNU libiconv work as designed.

This patch fixes dependencies for parallel make, and avoids failures
with make targets not supported by GNU libiconv.

--
Yaakov Selkowitz
Associate Software Engineer, ARM
Red Hat, Inc.

[-- Attachment #2: 0001-toplevel-libiconv.patch --]
[-- Type: text/x-patch, Size: 6417 bytes --]

2015-05-29 Yaakov Selkowitz <yselkowi@redhat.com>

* Makefile.def (libiconv): Mark pdf/html/info as missing.
(configure-gcc): Depend on all-libiconv.
(all-gcc): Ditto.
(configure-libcpp): Ditto.
(all-libcpp): Ditto.
(configure-intl): Ditto.
* Makefile.in: Regenerate.

Index: Makefile.def
===================================================================
--- Makefile.def (revision 223875)
+++ Makefile.def (working copy)
@@ -95,7 +95,9 @@
host_modules= { module= libiconv;
extra_configure_flags='--disable-shared';
no_install= true;
- missing= install-info;
+ missing= pdf;
+ missing= html;
+ missing= info;
missing= install-pdf;
missing= install-html;
missing= install-info; };
@@ -322,6 +324,7 @@
dependencies = { module=configure-gcc; on=all-ld; };
dependencies = { module=configure-gcc; on=all-gold; };
dependencies = { module=configure-gcc; on=all-libelf; };
+dependencies = { module=configure-gcc; on=all-libiconv; };
dependencies = { module=all-gcc; on=all-libiberty; hard=true; };
dependencies = { module=all-gcc; on=all-intl; };
dependencies = { module=all-gcc; on=all-mpfr; };
@@ -340,6 +343,7 @@
dependencies = { module=all-gcc; on=all-libiberty; };
dependencies = { module=all-gcc; on=all-fixincludes; };
dependencies = { module=all-gcc; on=all-lto-plugin; };
+dependencies = { module=all-gcc; on=all-libiconv; };
dependencies = { module=info-gcc; on=all-build-libiberty; };
dependencies = { module=dvi-gcc; on=all-build-libiberty; };
dependencies = { module=pdf-gcc; on=all-build-libiberty; };
@@ -351,8 +355,10 @@

dependencies = { module=configure-libcpp; on=configure-libiberty; hard=true; };
dependencies = { module=configure-libcpp; on=configure-intl; };
+dependencies = { module=configure-libcpp; on=all-libiconv; };
dependencies = { module=all-libcpp; on=all-libiberty; hard=true; };
dependencies = { module=all-libcpp; on=all-intl; };
+dependencies = { module=all-libcpp; on=all-libiconv; };

dependencies = { module=all-fixincludes; on=all-libiberty; };

@@ -371,6 +377,7 @@

dependencies = { module=all-utils; on=all-libiberty; };

+dependencies = { module=configure-intl; on=all-libiconv; };
dependencies = { module=configure-mpfr; on=all-gmp; };
dependencies = { module=configure-mpc; on=all-mpfr; };
dependencies = { module=configure-isl; on=all-gmp; };
Index: Makefile.in
===================================================================
--- Makefile.in (revision 223875)
+++ Makefile.in (working copy)
@@ -24221,24 +24221,8 @@
@if libiconv
maybe-info-libiconv: info-libiconv

-info-libiconv: \
- configure-libiconv
- @: $(MAKE); $(unstage)
- @[ -f ./libiconv/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing info in libiconv"; \
- (cd $(HOST_SUBDIR)/libiconv && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
- info) \
- || exit 1
+# libiconv doesn't support info.
+info-libiconv:

@endif libiconv

@@ -24273,24 +24257,8 @@
@if libiconv
maybe-pdf-libiconv: pdf-libiconv

-pdf-libiconv: \
- configure-libiconv
- @: $(MAKE); $(unstage)
- @[ -f ./libiconv/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing pdf in libiconv"; \
- (cd $(HOST_SUBDIR)/libiconv && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
- pdf) \
- || exit 1
+# libiconv doesn't support pdf.
+pdf-libiconv:

@endif libiconv

@@ -24299,24 +24267,8 @@
@if libiconv
maybe-html-libiconv: html-libiconv

-html-libiconv: \
- configure-libiconv
- @: $(MAKE); $(unstage)
- @[ -f ./libiconv/Makefile ] || exit 0; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(HOST_EXPORTS) \
- for flag in $(EXTRA_HOST_FLAGS) ; do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- echo "Doing html in libiconv"; \
- (cd $(HOST_SUBDIR)/libiconv && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
- html) \
- || exit 1
+# libiconv doesn't support html.
+html-libiconv:

@endif libiconv

@@ -49662,6 +49614,7 @@
configure-stage4-gcc: maybe-all-stage4-libelf
configure-stageprofile-gcc: maybe-all-stageprofile-libelf
configure-stagefeedback-gcc: maybe-all-stagefeedback-libelf
+configure-gcc: maybe-all-libiconv
all-gcc: all-libiberty

all-stage1-gcc: all-stage1-libiberty
@@ -49806,6 +49759,7 @@
all-stage4-gcc: maybe-all-stage4-lto-plugin
all-stageprofile-gcc: maybe-all-stageprofile-lto-plugin
all-stagefeedback-gcc: maybe-all-stagefeedback-lto-plugin
+all-gcc: maybe-all-libiconv
info-gcc: maybe-all-build-libiberty

info-stage1-gcc: maybe-all-build-libiberty
@@ -49858,6 +49812,7 @@
configure-stage4-libcpp: maybe-configure-stage4-intl
configure-stageprofile-libcpp: maybe-configure-stageprofile-intl
configure-stagefeedback-libcpp: maybe-configure-stagefeedback-intl
+configure-libcpp: maybe-all-libiconv
all-libcpp: all-libiberty

all-stage1-libcpp: all-stage1-libiberty
@@ -49874,6 +49829,7 @@
all-stage4-libcpp: maybe-all-stage4-intl
all-stageprofile-libcpp: maybe-all-stageprofile-intl
all-stagefeedback-libcpp: maybe-all-stagefeedback-intl
+all-libcpp: maybe-all-libiconv
all-fixincludes: maybe-all-libiberty

all-stage1-fixincludes: maybe-all-stage1-libiberty
@@ -49904,6 +49860,7 @@
all-libcc1: maybe-all-gcc
all-gotools: maybe-all-target-libgo
all-utils: maybe-all-libiberty
+configure-intl: maybe-all-libiconv
configure-mpfr: maybe-all-gmp

configure-stage1-mpfr: maybe-all-stage1-gmp