Fix cross-compilation Fetched httpd-2.4.x-cross_compile.diff from upstream bugtracker: https://issues.apache.org/bugzilla/show_bug.cgi?id=51257#c6 which is a bundle of upstream revisions: http://svn.apache.org/viewvc?view=revision&revision=1327907 http://svn.apache.org/viewvc?view=revision&revision=1328390 http://svn.apache.org/viewvc?view=revision&revision=1328714 Signed-off-by: Bernd Kuhls --- a/server/Makefile.in +++ b/server/Makefile.in @@ -24,9 +24,14 @@ TARGETS = delete-exports $(LTLIBRARY_NAM include $(top_builddir)/build/rules.mk include $(top_srcdir)/build/library.mk +ifdef CC_FOR_BUILD +gen_test_char: gen_test_char.c + $(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) -DCROSS_COMPILE -o $@ $< +else gen_test_char_OBJECTS = gen_test_char.lo gen_test_char: $(gen_test_char_OBJECTS) $(LINK) $(EXTRA_LDFLAGS) $(gen_test_char_OBJECTS) $(EXTRA_LIBS) +endif test_char.h: gen_test_char ./gen_test_char > test_char.h --- a/configure.in +++ b/configure.in @@ -206,6 +206,14 @@ AC_PROG_CPP dnl Try to get c99 support for variadic macros ifdef([AC_PROG_CC_C99], [AC_PROG_CC_C99]) +dnl In case of cross compilation we set CC_FOR_BUILD to cc unless +dnl we got already CC_FOR_BUILD from environment. +if test "x${build_alias}" != "x${host_alias}"; then + if test "x${CC_FOR_BUILD}" = "x"; then + CC_FOR_BUILD=cc + fi +fi + if test "x${cache_file}" = "x/dev/null"; then # Likewise, ensure that CC and CPP are passed through to the pcre # configure script iff caching is disabled (the autoconf 2.5x default). --- a/acinclude.m4 +++ b/acinclude.m4 @@ -55,6 +55,8 @@ AC_DEFUN([APACHE_GEN_CONFIG_VARS],[ APACHE_SUBST(CPPFLAGS) APACHE_SUBST(CFLAGS) APACHE_SUBST(CXXFLAGS) + APACHE_SUBST(CC_FOR_BUILD) + APACHE_SUBST(CFLAGS_FOR_BUILD) APACHE_SUBST(LTFLAGS) APACHE_SUBST(LDFLAGS) APACHE_SUBST(LT_LDFLAGS)