This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[RFA] Fix bin2c executable generation for cross-generation


  I was trying to compile binutils (under others) for mingw64
on cygwin.

 I used
../src/configure --host=x86_64-w64-mingw32 CFLAGS="-gstabs+ -O0"
--disable-libgui --disable-gdbtk --enable-targets=all

make all-gdb all-binutils all-gas all-ld


  It failed on bin2c because this is a executable that is built
using gcc compiler instead of x86_64-w64-mingw32-gcc
but the compilation still used $(LIBINTL).
 $(LIBINTL) is set to the just compiled library ../intl/libintl.a
which is compiled for w64 target, not cygwin
hence the build failure.

 The patch below uses -lintl instead of $(LIBINTL)
for bin2c$(EXEEXT_FOR_BUILD) rule.
 This allowed me to complete this build.


  Is this patch OK?

Pierre Muller

PS: I have no automake 2.63,
but I suppose that running it wouldn't change anything else
for that change, no?

ChangeLog entry:

2010-11-04  Pierre Muller  <muller@ics.u-strasbg.fr>

	* Makefile.am (bin2c rule): Replace $(LIBINTL) by -lintl
	* Makefile.in: Update accordingly.



Index: Makefile.am
===================================================================
RCS file: /cvs/src/src/binutils/Makefile.am,v
retrieving revision 1.125
diff -u -p -r1.125 Makefile.am
--- Makefile.am	25 May 2010 14:02:38 -0000	1.125
+++ Makefile.am	4 Nov 2010 12:41:40 -0000
@@ -274,7 +274,7 @@ sysinfo.@OBJEXT@: sysinfo.c
 	fi
 
 bin2c$(EXEEXT_FOR_BUILD): $(LIBINTL_DEP)
-	$(CC_FOR_BUILD) -o $@ $(AM_CPPFLAGS) $(AM_CFLAGS)
$(CFLAGS_FOR_BUILD) $(LDFLAGS_FOR_BUILD) $(srcdir)/bin2c.c
$(srcdir)/version.c $(LIBINTL)
+	$(CC_FOR_BUILD) -o $@ $(AM_CPPFLAGS) $(AM_CFLAGS)
$(CFLAGS_FOR_BUILD) $(LDFLAGS_FOR_BUILD) $(srcdir)/bin2c.c
$(srcdir)/version.c -lintl
 
 embedspu: embedspu.sh
 	sed
"s@^program_transform_name=@program_transform_name=$(program_transform_name)
@" < $< > $@
Index: Makefile.in
===================================================================
RCS file: /cvs/src/src/binutils/Makefile.in,v
retrieving revision 1.149
diff -u -p -r1.149 Makefile.in
--- Makefile.in	25 May 2010 14:02:38 -0000	1.149
+++ Makefile.in	4 Nov 2010 12:41:40 -0000
@@ -1226,7 +1226,7 @@ sysinfo.@OBJEXT@: sysinfo.c
 	fi
 
 bin2c$(EXEEXT_FOR_BUILD): $(LIBINTL_DEP)
-	$(CC_FOR_BUILD) -o $@ $(AM_CPPFLAGS) $(AM_CFLAGS)
$(CFLAGS_FOR_BUILD) $(LDFLAGS_FOR_BUILD) $(srcdir)/bin2c.c
$(srcdir)/version.c $(LIBINTL)
+	$(CC_FOR_BUILD) -o $@ $(AM_CPPFLAGS) $(AM_CFLAGS)
$(CFLAGS_FOR_BUILD) $(LDFLAGS_FOR_BUILD) $(srcdir)/bin2c.c
$(srcdir)/version.c -lintl
 
 embedspu: embedspu.sh
 	sed
"s@^program_transform_name=@program_transform_name=$(program_transform_name)
@" < $< > $@


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]