All of lore.kernel.org
 help / color / mirror / Atom feed
From: George McCollister <george.mccollister@gmail.com>
To: linux-audit@redhat.com
Subject: Patch to fix cross-compiling
Date: Fri, 02 Nov 2012 11:11:58 -0500	[thread overview]
Message-ID: <5093F0CE.3010701@gmail.com> (raw)

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

I've created a patch against your SVN trunk which uses 
ax_cc_for_build.m4 to provide CC_FOR_BUILD which is then used in 
auparse/Makefile.am and lib/Makefile.am to build the utilities that run 
on the build machine.

I was able to use this patch to cross-compile audit for my ARM platform. 
I'm still in the process of testing audit on the ARM platform.

Comments, questions and critiques welcome.

Regards,
George McCollister

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-Use-CC_FOR_BUILD-to-make-cross-compiling-work.patch --]
[-- Type: text/x-patch; name="0001-Use-CC_FOR_BUILD-to-make-cross-compiling-work.patch", Size: 21330 bytes --]

From 851be06769db3c21df166900aa1a281cf32324ec Mon Sep 17 00:00:00 2001
From: George McCollister <George.McCollister@gmail.com>
Date: Thu, 1 Nov 2012 13:28:49 -0500
Subject: [PATCH] Use CC_FOR_BUILD to make cross-compiling work

Signed-off-by: George McCollister <George.McCollister@gmail.com>
---
 auparse/Makefile.am   |  129 ++++++++++++++++++++++++++++---------------------
 autogen.sh            |    2 +-
 configure.ac          |    1 +
 lib/Makefile.am       |   91 ++++++++++++++++++----------------
 m4/ax_cc_for_build.m4 |   77 +++++++++++++++++++++++++++++
 5 files changed, 200 insertions(+), 100 deletions(-)
 create mode 100644 m4/ax_cc_for_build.m4

diff --git a/auparse/Makefile.am b/auparse/Makefile.am
index 2f7306f..b9a6753 100644
--- a/auparse/Makefile.am
+++ b/auparse/Makefile.am
@@ -47,125 +47,142 @@ BUILT_SOURCES = captabs.h clocktabs.h clone-flagtabs.h epoll_ctls.h famtabs.h \
 	mmaptabs.h mounttabs.h nfprototabs.h open-flagtabs.h \
 	persontabs.h prottabs.h ptracetabs.h rlimittabs.h recvtabs.h \
 	signaltabs.h socktabs.h socktypetabs.h typetabs.h
-noinst_PROGRAMS = gen_captabs_h gen_clock_h gen_clone-flagtabs_h \
-	gen_epoll_ctls_h gen_famtabs_h \
-	gen_fcntl-cmdtabs_h gen_flagtabs_h \
-	gen_icmptypetabs_h gen_ipctabs_h gen_nfprototabs_h \
-	gen_mmaptabs_h gen_mounttabs_h \
-	gen_open-flagtabs_h gen_persontabs_h gen_prottabs_h \
-	gen_recvtabs_h gen_rlimit_h gen_ptracetabs_h \
-	gen_signals_h gen_socktabs_h gen_socktypetabs_h gen_typetabs_h
-
-gen_captabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h captab.h
-gen_captabs_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="captab.h"'
+
+gen_captabs_h: ../lib/gen_tables.c ../lib/gen_tables.h captab.h Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"captab.h\" \
+		-o $@ ../lib/gen_tables.c
 captabs.h: gen_captabs_h Makefile
 	./gen_captabs_h --i2s cap > $@
 
-gen_clock_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h clocktab.h
-gen_clock_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="clocktab.h"'
+gen_clock_h: ../lib/gen_tables.c ../lib/gen_tables.h clocktab.h Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"clocktab.h\" \
+		-o $@ ../lib/gen_tables.c
 clocktabs.h: gen_clock_h Makefile
 	./gen_clock_h --i2s clock > $@
 
-gen_clone_flagtabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h \
-	clone-flagtab.h
-gen_clone_flagtabs_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="clone-flagtab.h"'
+gen_clone-flagtabs_h: ../lib/gen_tables.c ../lib/gen_tables.h \
+	clone-flagtab.h Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) \
+		-DTABLE_H=\"clone-flagtab.h\" -o $@ ../lib/gen_tables.c
 clone-flagtabs.h: gen_clone-flagtabs_h Makefile
 	./gen_clone-flagtabs_h --i2s-transtab clone_flag > $@
 
-gen_epoll_ctls_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h epoll_ctl.h
-gen_epoll_ctls_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="epoll_ctl.h"'
+gen_epoll_ctls_h: ../lib/gen_tables.c ../lib/gen_tables.h epoll_ctl.h Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"epoll_ctl.h\" \
+		-o $@ ../lib/gen_tables.c
 epoll_ctls.h: gen_epoll_ctls_h Makefile
 	./gen_epoll_ctls_h --i2s epoll_ctl > $@
 
-gen_famtabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h famtab.h
-gen_famtabs_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="famtab.h"'
+gen_famtabs_h: ../lib/gen_tables.c ../lib/gen_tables.h famtab.h Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"famtab.h\" \
+		-o $@ ../lib/gen_tables.c
 famtabs.h: gen_famtabs_h Makefile
 	./gen_famtabs_h --i2s fam > $@
 
-gen_flagtabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h flagtab.h
 # ../auparse/ is used to avoid using ../lib/flagtab.h
-gen_flagtabs_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="../auparse/flagtab.h"'
+gen_flagtabs_h: ../lib/gen_tables.c ../lib/gen_tables.h flagtab.h Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) \
+		-DTABLE_H=\"../auparse/flagtab.h\" -o $@ ../lib/gen_tables.c
 flagtabs.h: gen_flagtabs_h Makefile
 	./gen_flagtabs_h --i2s-transtab flag > $@
 
-gen_fcntl_cmdtabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h \
-	fcntl-cmdtab.h
-gen_fcntl_cmdtabs_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="fcntl-cmdtab.h"'
+gen_fcntl-cmdtabs_h: ../lib/gen_tables.c ../lib/gen_tables.h fcntl-cmdtab.h \
+	Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"fcntl-cmdtab.h\" \
+		-o $@ ../lib/gen_tables.c
 fcntl-cmdtabs.h: gen_fcntl-cmdtabs_h Makefile
 	./gen_fcntl-cmdtabs_h --i2s fcntl > $@
 
-gen_icmptypetabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h icmptypetab.h
-gen_icmptypetabs_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="icmptypetab.h"'
+gen_icmptypetabs_h: ../lib/gen_tables.c ../lib/gen_tables.h icmptypetab.h \
+	Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"icmptypetab.h\" \
+		-o $@ ../lib/gen_tables.c
 icmptypetabs.h: gen_icmptypetabs_h Makefile
 	./gen_icmptypetabs_h --i2s icmptype > $@
 
-gen_ipctabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h ipctab.h
-gen_ipctabs_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="ipctab.h"'
+gen_ipctabs_h: ../lib/gen_tables.c ../lib/gen_tables.h ipctab.h Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"ipctab.h\" \
+		-o $@ ../lib/gen_tables.c
 ipctabs.h: gen_ipctabs_h Makefile
 	./gen_ipctabs_h --i2s ipc > $@
 
-gen_mmaptabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h mmaptab.h
-gen_mmaptabs_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="mmaptab.h"'
+gen_mmaptabs_h: ../lib/gen_tables.c ../lib/gen_tables.h mmaptab.h Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"mmaptab.h\" \
+		-o $@ ../lib/gen_tables.c
 mmaptabs.h: gen_mmaptabs_h Makefile
 	./gen_mmaptabs_h --i2s-transtab mmap > $@
 
-gen_mounttabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h mounttab.h
-gen_mounttabs_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="mounttab.h"'
+gen_mounttabs_h: ../lib/gen_tables.c ../lib/gen_tables.h mounttab.h Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"mounttab.h\" \
+		-o $@ ../lib/gen_tables.c
 mounttabs.h: gen_mounttabs_h Makefile
 	./gen_mounttabs_h --i2s-transtab mount > $@
 
-gen_nfprototabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h nfprototab.h
-gen_nfprototabs_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="nfprototab.h"'
+gen_nfprototabs_h: ../lib/gen_tables.c ../lib/gen_tables.h nfprototab.h \
+	Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"nfprototab.h\" \
+		-o $@ ../lib/gen_tables.c
 nfprototabs.h: gen_nfprototabs_h Makefile
 	./gen_nfprototabs_h --i2s nfproto > $@
 
-gen_open_flagtabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h \
-	open-flagtab.h
-gen_open_flagtabs_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="open-flagtab.h"'
+gen_open-flagtabs_h: ../lib/gen_tables.c ../lib/gen_tables.h open-flagtab.h \
+	Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"open-flagtab.h\" \
+		-o $@ ../lib/gen_tables.c
 open-flagtabs.h: gen_open-flagtabs_h Makefile
 	./gen_open-flagtabs_h --i2s-transtab open_flag > $@
 
-gen_persontabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h persontab.h
-gen_persontabs_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="persontab.h"'
+gen_persontabs_h: ../lib/gen_tables.c ../lib/gen_tables.h persontab.h Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"persontab.h\" \
+		-o $@ ../lib/gen_tables.c
 persontabs.h: gen_persontabs_h Makefile
 	./gen_persontabs_h --i2s person > $@
 
-gen_ptracetabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h ptracetab.h
-gen_ptracetabs_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="ptracetab.h"'
+gen_ptracetabs_h: ../lib/gen_tables.c ../lib/gen_tables.h ptracetab.h Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"ptracetab.h\" \
+		-o $@ ../lib/gen_tables.c
 ptracetabs.h: gen_ptracetabs_h Makefile
 	./gen_ptracetabs_h --i2s ptrace > $@
 
-gen_prottabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h prottab.h
-gen_prottabs_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="prottab.h"'
+gen_prottabs_h: ../lib/gen_tables.c ../lib/gen_tables.h prottab.h Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"prottab.h\" \
+		-o $@ ../lib/gen_tables.c
 prottabs.h: gen_prottabs_h Makefile
 	./gen_prottabs_h --i2s-transtab prot > $@
 
-gen_recvtabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h recvtab.h
-gen_recvtabs_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="recvtab.h"'
+gen_recvtabs_h: ../lib/gen_tables.c ../lib/gen_tables.h recvtab.h Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"recvtab.h\" \
+		-o $@ ../lib/gen_tables.c
 recvtabs.h: gen_recvtabs_h Makefile
 	./gen_recvtabs_h --i2s-transtab recv > $@
 
-gen_rlimit_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h rlimittab.h
-gen_rlimit_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="rlimittab.h"'
+gen_rlimit_h: ../lib/gen_tables.c ../lib/gen_tables.h rlimittab.h Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"rlimittab.h\" \
+		-o $@ ../lib/gen_tables.c
 rlimittabs.h: gen_rlimit_h Makefile
 	./gen_rlimit_h --i2s rlimit > $@
 
-gen_signals_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h signaltab.h
-gen_signals_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="signaltab.h"'
+gen_signals_h: ../lib/gen_tables.c ../lib/gen_tables.h signaltab.h Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"signaltab.h\" \
+		-o $@ ../lib/gen_tables.c
 signaltabs.h: gen_signals_h Makefile
 	./gen_signals_h --i2s signal > $@
 
-gen_socktabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h socktab.h
-gen_socktabs_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="socktab.h"'
+gen_socktabs_h: ../lib/gen_tables.c ../lib/gen_tables.h socktab.h Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"socktab.h\" \
+		-o $@ ../lib/gen_tables.c
 socktabs.h: gen_socktabs_h Makefile
 	./gen_socktabs_h --i2s sock > $@
 
-gen_socktypetabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h socktypetab.h
-gen_socktypetabs_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="socktypetab.h"'
+gen_socktypetabs_h: ../lib/gen_tables.c ../lib/gen_tables.h socktypetab.h \
+	Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"socktypetab.h\" \
+		-o $@ ../lib/gen_tables.c
 socktypetabs.h: gen_socktypetabs_h Makefile
 	./gen_socktypetabs_h --i2s sock_type > $@
 
-gen_typetabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h typetab.h
-gen_typetabs_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="typetab.h"'
+gen_typetabs_h: ../lib/gen_tables.c ../lib/gen_tables.h typetab.h Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"typetab.h\" \
+		-o $@ ../lib/gen_tables.c
 typetabs.h: gen_typetabs_h Makefile
 	./gen_typetabs_h --s2i type > $@
diff --git a/autogen.sh b/autogen.sh
index 205fd26..04653fe 100755
--- a/autogen.sh
+++ b/autogen.sh
@@ -1,5 +1,5 @@
 #! /bin/sh
 set -x -e
 # --no-recursive is available only in recent autoconf versions
-autoreconf -fv --install
+autoreconf -fv --install -I m4
 mv INSTALL.tmp INSTALL
diff --git a/configure.ac b/configure.ac
index e14df60..4245618 100644
--- a/configure.ac
+++ b/configure.ac
@@ -51,6 +51,7 @@ echo Checking for programs
 AC_PROG_CC
 AC_PROG_INSTALL
 AC_PROG_AWK
+AX_CC_FOR_BUILD
 
 echo .
 echo Checking for header files
diff --git a/lib/Makefile.am b/lib/Makefile.am
index c5952f9..fbd6bb1 100644
--- a/lib/Makefile.am
+++ b/lib/Makefile.am
@@ -47,99 +47,104 @@ endif
 if USE_ARMEB
 BUILT_SOURCES += armeb_tables.h
 endif
-noinst_PROGRAMS = gen_actiontabs_h gen_errtabs_h gen_fieldtabs_h \
-	gen_flagtabs_h gen_ftypetabs_h gen_i386_tables_h \
-	gen_ia64_tables_h gen_machinetabs_h gen_msg_typetabs_h \
-	gen_optabs_h gen_ppc_tables_h gen_s390_tables_h \
-	gen_s390x_tables_h gen_x86_64_tables_h
-if USE_ALPHA
-noinst_PROGRAMS += gen_alpha_tables_h
-endif
-if USE_ARMEB
-noinst_PROGRAMS += gen_armeb_tables_h
-endif
-gen_actiontabs_h_SOURCES = gen_tables.c gen_tables.h actiontab.h
-gen_actiontabs_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="actiontab.h"'
+gen_actiontabs_h: gen_tables.c gen_tables.h actiontab.h Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"actiontab.h\" \
+		-o $@ gen_tables.c
 actiontabs.h: gen_actiontabs_h Makefile
 	./gen_actiontabs_h --lowercase --i2s --s2i action > $@
 
 if USE_ALPHA
-gen_alpha_tables_h_SOURCES = gen_tables.c gen_tables.h alpha_table.h
-gen_alpha_tables_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="alpha_table.h"'
+gen_alpha_tables_h: gen_tables.c gen_tables.h alpha_table.h Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"alpha_table.h\" \
+		-o $@ gen_tables.c
 alpha_tables.h: gen_alpha_tables_h Makefile
 	./gen_alpha_tables_h --lowercase --i2s --s2i alpha_syscall > $@
 endif
 
 if USE_ARMEB
-gen_armeb_tables_h_SOURCES = gen_tables.c gen_tables.h armeb_table.h
-gen_armeb_tables_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="armeb_table.h"'
+gen_armeb_tables_h: gen_tables.c gen_tables.h armeb_table.h Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"armeb_table.h\" \
+		-o $@ gen_tables.c
 armeb_tables.h: gen_armeb_tables_h Makefile
 	./gen_armeb_tables_h --lowercase --i2s --s2i armeb_syscall > $@
 endif
 
-gen_errtabs_h_SOURCES = gen_tables.c gen_tables.h errtab.h
-gen_errtabs_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="errtab.h"'
+gen_errtabs_h: gen_tables.c gen_tables.h errtab.h Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"errtab.h\" \
+		-o $@ gen_tables.c
 errtabs.h: gen_errtabs_h Makefile
 	./gen_errtabs_h --duplicate-ints --uppercase --i2s --s2i err > $@
 
-gen_fieldtabs_h_SOURCES = gen_tables.c gen_tables.h fieldtab.h
-gen_fieldtabs_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="fieldtab.h"'
+gen_fieldtabs_h: gen_tables.c gen_tables.h fieldtab.h Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"fieldtab.h\" \
+		-o $@ gen_tables.c
 fieldtabs.h: gen_fieldtabs_h Makefile
 	./gen_fieldtabs_h --duplicate-ints --lowercase --i2s --s2i field > $@
 
-gen_flagtabs_h_SOURCES = gen_tables.c gen_tables.h flagtab.h
-gen_flagtabs_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="flagtab.h"'
+gen_flagtabs_h: gen_tables.c gen_tables.h flagtab.h Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"flagtab.h\" \
+		-o $@ gen_tables.c
 flagtabs.h: gen_flagtabs_h Makefile
 	./gen_flagtabs_h --lowercase --i2s --s2i flag > $@
 
-gen_ftypetabs_h_SOURCES = gen_tables.c gen_tables.h ftypetab.h
-gen_ftypetabs_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="ftypetab.h"'
+gen_ftypetabs_h: gen_tables.c gen_tables.h ftypetab.h Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"ftypetab.h\" \
+		-o $@ gen_tables.c
 ftypetabs.h: gen_ftypetabs_h Makefile
 	./gen_ftypetabs_h --lowercase --i2s --s2i ftype > $@
 
-gen_i386_tables_h_SOURCES = gen_tables.c gen_tables.h i386_table.h
-gen_i386_tables_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="i386_table.h"'
+gen_i386_tables_h: gen_tables.c gen_tables.h i386_table.h Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"i386_table.h\" \
+		-o $@ gen_tables.c
 i386_tables.h: gen_i386_tables_h Makefile
 	./gen_i386_tables_h --duplicate-ints --lowercase --i2s --s2i \
 		i386_syscall > $@
 
-gen_ia64_tables_h_SOURCES = gen_tables.c gen_tables.h ia64_table.h
-gen_ia64_tables_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="ia64_table.h"'
+gen_ia64_tables_h: gen_tables.c gen_tables.h ia64_table.h Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"ia64_table.h\" \
+		-o $@ gen_tables.c
 ia64_tables.h: gen_ia64_tables_h Makefile
 	./gen_ia64_tables_h --lowercase --i2s --s2i ia64_syscall > $@
 
-gen_machinetabs_h_SOURCES = gen_tables.c gen_tables.h machinetab.h
-gen_machinetabs_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="machinetab.h"'
+gen_machinetabs_h: gen_tables.c gen_tables.h machinetab.h Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"machinetab.h\" \
+		-o $@ gen_tables.c
 machinetabs.h: gen_machinetabs_h Makefile
 	./gen_machinetabs_h --duplicate-ints --lowercase --i2s --s2i machine \
 		> $@
 
-gen_msg_typetabs_h_SOURCES = gen_tables.c gen_tables.h msg_typetab.h
-gen_msg_typetabs_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="msg_typetab.h"'
+gen_msg_typetabs_h: gen_tables.c gen_tables.h msg_typetab.h Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"msg_typetab.h\" \
+		-o $@ gen_tables.c
 msg_typetabs.h: gen_msg_typetabs_h Makefile
 	./gen_msg_typetabs_h --uppercase --i2s --s2i msg_type > $@
 
-gen_optabs_h_SOURCES = gen_tables.c gen_tables.h optab.h
-gen_optabs_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="optab.h"'
+gen_optabs_h: gen_tables.c gen_tables.h optab.h Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"optab.h\" \
+		-o $@ gen_tables.c
 optabs.h: gen_optabs_h Makefile
 	./gen_optabs_h --i2s op > $@
 
-gen_ppc_tables_h_SOURCES = gen_tables.c gen_tables.h ppc_table.h
-gen_ppc_tables_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="ppc_table.h"'
+gen_ppc_tables_h: gen_tables.c gen_tables.h ppc_table.h Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"ppc_table.h\" \
+		-o $@ gen_tables.c
 ppc_tables.h: gen_ppc_tables_h Makefile
 	./gen_ppc_tables_h --lowercase --i2s --s2i ppc_syscall > $@
 
-gen_s390_tables_h_SOURCES = gen_tables.c gen_tables.h s390_table.h
-gen_s390_tables_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="s390_table.h"'
+gen_s390_tables_h: gen_tables.c gen_tables.h s390_table.h Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"s390_table.h\" \
+		-o $@ gen_tables.c
 s390_tables.h: gen_s390_tables_h Makefile
 	./gen_s390_tables_h --lowercase --i2s --s2i s390_syscall > $@
 
-gen_s390x_tables_h_SOURCES = gen_tables.c gen_tables.h s390x_table.h
-gen_s390x_tables_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="s390x_table.h"'
+gen_s390x_tables_h: gen_tables.c gen_tables.h s390x_table.h Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"s390x_table.h\" \
+		-o $@ gen_tables.c
 s390x_tables.h: gen_s390x_tables_h Makefile
 	./gen_s390x_tables_h --lowercase --i2s --s2i s390x_syscall > $@
 
-gen_x86_64_tables_h_SOURCES = gen_tables.c gen_tables.h x86_64_table.h
-gen_x86_64_tables_h_CFLAGS = $(AM_CFLAGS) '-DTABLE_H="x86_64_table.h"'
+gen_x86_64_tables_h: gen_tables.c gen_tables.h x86_64_table.h Makefile
+	$(CC_FOR_BUILD) $(INCLUDES) $(AM_CFLAGS) -DTABLE_H=\"x86_64_table.h\" \
+		-o $@ gen_tables.c
 x86_64_tables.h: gen_x86_64_tables_h Makefile
 	./gen_x86_64_tables_h --lowercase --i2s --s2i x86_64_syscall > $@
diff --git a/m4/ax_cc_for_build.m4 b/m4/ax_cc_for_build.m4
new file mode 100644
index 0000000..c880fd0
--- /dev/null
+++ b/m4/ax_cc_for_build.m4
@@ -0,0 +1,77 @@
+# ===========================================================================
+#      http://www.gnu.org/software/autoconf-archive/ax_cc_for_build.html
+# ===========================================================================
+#
+# SYNOPSIS
+#
+#   AX_CC_FOR_BUILD
+#
+# DESCRIPTION
+#
+#   Find a build-time compiler. Sets CC_FOR_BUILD and EXEEXT_FOR_BUILD.
+#
+# LICENSE
+#
+#   Copyright (c) 2010 Reuben Thomas <rrt@sc3d.org>
+#   Copyright (c) 1999 Richard Henderson <rth@redhat.com>
+#
+#   This program is free software: you can redistribute it and/or modify it
+#   under the terms of the GNU General Public License as published by the
+#   Free Software Foundation, either version 3 of the License, or (at your
+#   option) any later version.
+#
+#   This program is distributed in the hope that it will be useful, but
+#   WITHOUT ANY WARRANTY; without even the implied warranty of
+#   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
+#   Public License for more details.
+#
+#   You should have received a copy of the GNU General Public License along
+#   with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+#   As a special exception, the respective Autoconf Macro's copyright owner
+#   gives unlimited permission to copy, distribute and modify the configure
+#   scripts that are the output of Autoconf when processing the Macro. You
+#   need not follow the terms of the GNU General Public License when using
+#   or distributing such scripts, even though portions of the text of the
+#   Macro appear in them. The GNU General Public License (GPL) does govern
+#   all other use of the material that constitutes the Autoconf Macro.
+#
+#   This special exception to the GPL applies to versions of the Autoconf
+#   Macro released by the Autoconf Archive. When you make and distribute a
+#   modified version of the Autoconf Macro, you may extend this special
+#   exception to the GPL to apply to your modified version as well.
+
+#serial 2
+
+dnl Get a default for CC_FOR_BUILD to put into Makefile.
+AC_DEFUN([AX_CC_FOR_BUILD],
+[# Put a plausible default for CC_FOR_BUILD in Makefile.
+if test -z "$CC_FOR_BUILD"; then
+  if test "x$cross_compiling" = "xno"; then
+    CC_FOR_BUILD='$(CC)'
+  else
+    CC_FOR_BUILD=gcc
+  fi
+fi
+AC_SUBST(CC_FOR_BUILD)
+# Also set EXEEXT_FOR_BUILD.
+if test "x$cross_compiling" = "xno"; then
+  EXEEXT_FOR_BUILD='$(EXEEXT)'
+else
+  AC_CACHE_CHECK([for build system executable suffix], bfd_cv_build_exeext,
+    [rm -f conftest*
+     echo 'int main () { return 0; }' > conftest.c
+     bfd_cv_build_exeext=
+     ${CC_FOR_BUILD} -o conftest conftest.c 1>&5 2>&5
+     for file in conftest.*; do
+       case $file in
+       *.c | *.o | *.obj | *.ilk | *.pdb) ;;
+       *) bfd_cv_build_exeext=`echo $file | sed -e s/conftest//` ;;
+       esac
+     done
+     rm -f conftest*
+     test x"${bfd_cv_build_exeext}" = x && bfd_cv_build_exeext=no])
+  EXEEXT_FOR_BUILD=""
+  test x"${bfd_cv_build_exeext}" != xno && EXEEXT_FOR_BUILD=${bfd_cv_build_exeext}
+fi
+AC_SUBST(EXEEXT_FOR_BUILD)])dnl
-- 
1.7.1


[-- Attachment #3: Type: text/plain, Size: 0 bytes --]



             reply	other threads:[~2012-11-02 16:12 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-11-02 16:11 George McCollister [this message]
2012-11-05 14:28 ` Patch to fix cross-compiling Steve Grubb
2012-11-05 14:38   ` George McCollister
2012-11-05 17:25     ` Steve Grubb
2012-11-05 18:52       ` George McCollister

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5093F0CE.3010701@gmail.com \
    --to=george.mccollister@gmail.com \
    --cc=linux-audit@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.