Re: [PATCH 0/5] let make flexible for multiple host

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



(2012/04/17 23:44), Dave Anderson wrote:
> 
> 
> ----- Original Message -----
>> Hi Dave,
>>
>> This patch set will make configure or build flexible for host environment,
>> in particular dealing with cross compiler.
>> Please consider about this proposal.
>>
>> patch#1:
>>   By declaring tables about target and host relationships,
>>   cleanup corresponding code and the new build combination will be
>>   adapted briefly.
>>
>> Remaining patches:
>>   Try to relieve cross compiler burden by using explicit host_cross option.
>>   I'm using cross compiler environ host=x86 for target=ppc,
>>   and might attempt target=<another arch>  in the near future.
>>   I stocked private patches to accomplish cross compiling
>>   but I'd like to discard them permanently with your agreement.
>>
>> Thanks,
>> Toshi
> 
> I am presuming that you have successfully built a PPC binary on an
> x86 or x86_64 host, and then you have copied the binary to a PPC host
> that doesn't have a resident compiler?  But then again, looking at your

Hi Dave,

I didn't explain about background issues.

I built a PPC binary on an x86 host cross compiler. When run it,
I have to ftp to PPC machine where dose not have self build tools.
Here is dumping my build environment info.
 $ uname -m
 x86_64
 $ file gcc
 gcc: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), 
 dynamically linked (uses shared libs), for GNU/Linux 2.2.5, stripped
 $ ./gcc -dumpmachine
 powerpc-linux-gnu

> patch as is, it looks like you can only allow "target=PPC" on a PPC64 host,
> which is already supported?:
> 
>     static struct host_table {
> 
>     ... [ cut ] ...
> 
>     }, ppc[] = {
>             {
>                     .host = PPC64,
>                     .cflags = "-m32 -D_FILE_OFFSET_BITS=64 -fPIC",
>                     .gdb_conf_flags = "--target=ppc-elf-linux CFLAGS=-m32",
>             }
>     };

This "target=PPC" on a PPC64 host has been already supported
since I copied it into ppc[] table.
  [PATCH v1 1/4] Support PPC32 Core analysis on PPC64 Host
  https://www.redhat.com/archives/crash-utility/2011-November/msg00019.html

The purpose is to build ppc 32bit binary with compatible target CFLAGS "-m32"
of ppc64 compiler. This is similar idea with x86_64.

But I added new cross support(is_cross is TRUE) in patch#5 which is
distinct from original purpose.

+	{
+		.host = X86,
+		.cflags = "-D_FILE_OFFSET_BITS=64",
+		.gdb_conf_flags = "--host=i686-pc-linux-gnu "
+				  "--target=powerpc-elf-linux",
+		.is_cross = TRUE,
+	},

> In any case, I would prefer that you specifically address your
> particular PPC-on-X86 build issue, because I'm not sure what
> other combinations would be particularly useful.

> I'm not particularly interested in speculative changes.  The only
> future architecture support I can see on the horizon is 64-bit ARM,
> and that is a few a few years away.  And we are lucky that x86 and
> ARM have the same endianness and data-type sizes, so we can continue
> (hopefully) to build x86_64 binaries to analyze 64-bit ARM vmcores
> on x86_64 hosts.

My issues are to arrange original crash package as compilable one with cross.
I edit package's Makefile or configure parameters --host/--target at spec file,
finally building with environment variables CC, AR, LD, etc.

By applying patches, I can build crash only with tiny spec update,
"make target=PPC host_cross=X86" without modification of released archive.

Then, I'll start mips architecture (seems to go toward embedded minority).
There are probably the similar considerations about cross compile.
I want to be done with "make target=MIPS host_cross=X86" by adding mips tables.

> Also, note that your patch fails because it collides with Rabin's queued
> fix for building SIAL for target=ARM and target=PPC builds:
> 
>    [PATCH] build sial with TARGET_CFLAGS
>   https://www.redhat.com/archives/crash-utility/2012-March/msg00113.html

I haven't caught this update. I'd send updated portion.

Thanks,
Toshi

> Dave
> 
> 
> 
> 
>>
>> Toshikazu Nakayama (5):
>>    configure: retake the way of host compiler detection
>>    Makefile: wrap cc, gcc and ar with common make valiables
>>    make: add host_cross option
>>    build_data: handle CC valiable
>>    configure: handle cross compile with target=ppc host_cross=x86
>>
>>   Makefile            |  144 +++++++++--------
>>   configure.c         |  441
>>   ++++++++++++++++++++++-----------------------------
>>   extensions/Makefile |   10 +-
>>   extensions/sial.mk  |    6 +-
>>   extensions/snap.mk  |    6 +-
>>   5 files changed, 289 insertions(+), 318 deletions(-)
>>
>>
>>
>>
>>
>>
>>
>> --
>> Crash-utility mailing list
>> Crash-utility@xxxxxxxxxx
>> https://www.redhat.com/mailman/listinfo/crash-utility
>>
> 
> --
> Crash-utility mailing list
> Crash-utility@xxxxxxxxxx
> https://www.redhat.com/mailman/listinfo/crash-utility
> 

Date: Mon, 24 Oct 2011 18:14:10 +0900
Subject: [PATCH 2/5] Makefile: wrap cc, gcc and ar with common make variables

By this variables, cross-compiler can be adapted into crash build
and also, don't hurt existing build targets.

CC or AR must be guaranteed by cross environ.

A configure.c is still compiled with host native compiler
because this need to run before crash compile.

Signed-off-by: Toshikazu Nakayama <nakayama.ts@xxxxxxxxxxxxxx>
---
 Makefile            |  124 +++++++++++++++++++++++++++------------------------
 extensions/Makefile |    8 +++-
 extensions/sial.mk  |    6 ++-
 extensions/snap.mk  |    6 ++-
 4 files changed, 81 insertions(+), 63 deletions(-)

diff --git a/Makefile b/Makefile
index 6f63128..e7e468e 100644
--- a/Makefile
+++ b/Makefile
@@ -31,6 +31,12 @@ ifeq (${TARGET}, PPC64)
 CONF_FLAGS = -m64
 endif
 
+ifeq ($(CC), )
+CC = cc
+endif
+ifeq ($(AR), )
+AR = ar
+endif
 #
 # GDB, GDB_FILES, GDB_OFILES and GDB_PATCH_FILES will be configured automatically by configure 
 #
@@ -274,7 +280,7 @@ gdb_patch:
 		patch -p0 < ${GDB}.patch; fi
 
 library: make_build_data ${OBJECT_FILES}
-	ar -rs ${PROGRAM}lib.a ${OBJECT_FILES}
+	$(AR) -rs ${PROGRAM}lib.a ${OBJECT_FILES}
 
 gdb: force
 	rm -f ${GDB_OFILES}
@@ -297,7 +303,7 @@ do_clean:
 	@(cd memory_driver; make --no-print-directory -i clean)
 
 make_build_data: force
-	cc -c ${CRASH_CFLAGS} build_data.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} build_data.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 install:
 	/usr/bin/install ${PROGRAM} ${INSTALLDIR}
@@ -319,171 +325,171 @@ nowarn: make_configure
 	@make --no-print-directory gdb_merge
 
 main.o: ${GENERIC_HFILES} main.c
-	cc -c ${CRASH_CFLAGS} main.c ${WARNING_OPTIONS} ${WARNING_ERROR} 
+	$(CC) -c ${CRASH_CFLAGS} main.c ${WARNING_OPTIONS} ${WARNING_ERROR} 
 
 cmdline.o: ${GENERIC_HFILES} cmdline.c
-	cc -c ${CRASH_CFLAGS} cmdline.c -I${READLINE_DIRECTORY} ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} cmdline.c -I${READLINE_DIRECTORY} ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 tools.o: ${GENERIC_HFILES} tools.c
-	cc -c ${CRASH_CFLAGS} tools.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} tools.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 global_data.o: ${GENERIC_HFILES} global_data.c
-	cc -c ${CRASH_CFLAGS} global_data.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} global_data.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 symbols.o: ${GENERIC_HFILES} symbols.c
-	cc -c ${CRASH_CFLAGS} symbols.c -I${BFD_DIRECTORY} -I${GDB_INCLUDE_DIRECTORY} ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} symbols.c -I${BFD_DIRECTORY} -I${GDB_INCLUDE_DIRECTORY} ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 filesys.o: ${GENERIC_HFILES} filesys.c
-	cc -c ${CRASH_CFLAGS} filesys.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} filesys.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 help.o: ${GENERIC_HFILES} help.c
-	cc -c ${CRASH_CFLAGS} help.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} help.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 memory.o: ${GENERIC_HFILES} memory.c
-	cc -c ${CRASH_CFLAGS} memory.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} memory.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 test.o: ${GENERIC_HFILES} test.c
-	cc -c ${CRASH_CFLAGS} test.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} test.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 task.o: ${GENERIC_HFILES} task.c
-	cc -c ${CRASH_CFLAGS} task.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} task.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 kernel.o: ${GENERIC_HFILES} kernel.c
-	cc -c ${CRASH_CFLAGS} kernel.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} kernel.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 gdb_interface.o: ${GENERIC_HFILES} gdb_interface.c
-	cc -c ${CRASH_CFLAGS} gdb_interface.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} gdb_interface.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 va_server.o: ${MCORE_HFILES} va_server.c
-	cc -c ${CRASH_CFLAGS} va_server.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} va_server.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 va_server_v1.o: ${MCORE_HFILES} va_server_v1.c
-	cc -c ${CRASH_CFLAGS} va_server_v1.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} va_server_v1.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 lkcd_common.o: ${GENERIC_HFILES} ${LKCD_DUMP_HFILES} lkcd_common.c
-	cc -c ${CRASH_CFLAGS} lkcd_common.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} lkcd_common.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 lkcd_v1.o: ${GENERIC_HFILES} ${LKCD_DUMP_HFILES} lkcd_v1.c
-	cc -c ${CRASH_CFLAGS} lkcd_v1.c -DMCLX ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} lkcd_v1.c -DMCLX ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 lkcd_v2_v3.o: ${GENERIC_HFILES} ${LKCD_DUMP_HFILES} lkcd_v2_v3.c
-	cc -c ${CRASH_CFLAGS} lkcd_v2_v3.c -DMCLX ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} lkcd_v2_v3.c -DMCLX ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 lkcd_v5.o: ${GENERIC_HFILES} ${LKCD_DUMP_HFILES} lkcd_v5.c
-	cc -c ${CRASH_CFLAGS} lkcd_v5.c -DMCLX ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} lkcd_v5.c -DMCLX ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 lkcd_v7.o: ${GENERIC_HFILES} ${LKCD_DUMP_HFILES} lkcd_v7.c
-	cc -c ${CRASH_CFLAGS} lkcd_v7.c -DMCLX ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} lkcd_v7.c -DMCLX ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 lkcd_v8.o: ${GENERIC_HFILES} ${LKCD_DUMP_HFILES} lkcd_v8.c
-	cc -c ${CRASH_CFLAGS} lkcd_v8.c -DMCLX ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} lkcd_v8.c -DMCLX ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 net.o: ${GENERIC_HFILES} net.c
-	cc -c ${CRASH_CFLAGS} net.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} net.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 dev.o: ${GENERIC_HFILES} dev.c
-	cc -c ${CRASH_CFLAGS} dev.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} dev.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 # remote.c functionality has been deprecated
 remote.o: ${GENERIC_HFILES} remote.c
-	@cc -c ${CRASH_CFLAGS} remote.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} remote.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 remote_daemon.o: ${GENERIC_HFILES} remote.c
-	cc -c ${CRASH_CFLAGS} -DDAEMON remote.c -o remote_daemon.o ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} -DDAEMON remote.c -o remote_daemon.o ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 x86.o: ${GENERIC_HFILES} ${REDHAT_HFILES} x86.c
-	cc -c ${CRASH_CFLAGS} x86.c -DMCLX ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} x86.c -DMCLX ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 alpha.o: ${GENERIC_HFILES} alpha.c
-	cc -c ${CRASH_CFLAGS} alpha.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} alpha.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 ppc.o: ${GENERIC_HFILES} ppc.c
-	cc -c ${CRASH_CFLAGS} ppc.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} ppc.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 ia64.o: ${GENERIC_HFILES} ${REDHAT_HFILES} ia64.c
-	cc -c ${CRASH_CFLAGS} ia64.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} ia64.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 ppc64.o: ${GENERIC_HFILES} ppc64.c
-	cc -c ${CRASH_CFLAGS} ppc64.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} ppc64.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 x86_64.o: ${GENERIC_HFILES} ${REDHAT_HFILES} x86_64.c
-	cc -c ${CRASH_CFLAGS} x86_64.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} x86_64.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 arm.o: ${GENERIC_HFILES} ${REDHAT_HFILES} arm.c
-	cc -c ${CRASH_CFLAGS} arm.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} arm.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 s390.o: ${GENERIC_HFILES} ${IBM_HFILES} s390.c
-	cc -c ${CRASH_CFLAGS} s390.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} s390.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 s390x.o: ${GENERIC_HFILES} ${IBM_HFILES} s390x.c
-	cc -c ${CRASH_CFLAGS} s390x.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} s390x.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 s390dbf.o: ${GENERIC_HFILES} ${IBM_HFILES} s390dbf.c
-	cc -c ${CRASH_CFLAGS} s390dbf.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} s390dbf.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 s390_dump.o: ${GENERIC_HFILES} ${IBM_HFILES} s390_dump.c
-	cc -c ${CRASH_CFLAGS} s390_dump.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} s390_dump.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 netdump.o: ${GENERIC_HFILES} ${REDHAT_HFILES} netdump.c
-	cc -c ${CRASH_CFLAGS} netdump.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} netdump.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 netdump_daemon.o: ${GENERIC_HFILES} ${REDHAT_HFILES} netdump.c
-	cc -c ${CRASH_CFLAGS} -DDAEMON netdump.c -o netdump_daemon.o ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} -DDAEMON netdump.c -o netdump_daemon.o ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 diskdump.o: ${GENERIC_HFILES} ${REDHAT_HFILES} diskdump.c
-	cc -c ${CRASH_CFLAGS} diskdump.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} diskdump.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 makedumpfile.o: ${GENERIC_HFILES} ${REDHAT_HFILES} makedumpfile.c
-	cc -c ${CRASH_CFLAGS} makedumpfile.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} makedumpfile.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 xendump.o: ${GENERIC_HFILES} ${REDHAT_HFILES} xendump.c
-	cc -c ${CRASH_CFLAGS} xendump.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} xendump.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 kvmdump.o: ${GENERIC_HFILES} ${REDHAT_HFILES} kvmdump.c
-	cc -c ${CRASH_CFLAGS} kvmdump.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} kvmdump.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 qemu.o: ${GENERIC_HFILES} ${REDHAT_HFILES} qemu.c
-	cc -c ${CRASH_CFLAGS} qemu.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} qemu.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 qemu-load.o: ${GENERIC_HFILES} ${REDHAT_HFILES} qemu-load.c
-	cc -c ${CRASH_CFLAGS} qemu-load.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} qemu-load.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 sadump.o: ${GENERIC_HFILES} ${SADUMP_HFILES} sadump.c
-	cc -c ${CRASH_CFLAGS} sadump.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} sadump.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 extensions.o: ${GENERIC_HFILES} extensions.c
-	cc -c ${CRASH_CFLAGS} extensions.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} extensions.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 lkcd_x86_trace.o: ${GENERIC_HFILES} ${LKCD_TRACE_HFILES} lkcd_x86_trace.c 
-	cc -c ${CRASH_CFLAGS} lkcd_x86_trace.c -DREDHAT ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} lkcd_x86_trace.c -DREDHAT ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 unwind_x86_32_64.o: ${GENERIC_HFILES} ${UNWIND_HFILES} unwind_x86_32_64.c
-	cc -c ${CRASH_CFLAGS} unwind_x86_32_64.c -o unwind_x86_32_64.o ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} unwind_x86_32_64.c -o unwind_x86_32_64.o ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 unwind_arm.o: ${GENERIC_HFILES} ${UNWIND_HFILES} unwind_arm.c
-	cc -c ${CRASH_CFLAGS} unwind_arm.c -o unwind_arm.o ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} unwind_arm.c -o unwind_arm.o ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 unwind_v1.o: ${GENERIC_HFILES} ${UNWIND_HFILES} unwind.c unwind_decoder.c
-	cc -c ${CRASH_CFLAGS} unwind.c -DREDHAT -DUNWIND_V1 -o unwind_v1.o ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} unwind.c -DREDHAT -DUNWIND_V1 -o unwind_v1.o ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 unwind_v2.o: ${GENERIC_HFILES} ${UNWIND_HFILES} unwind.c unwind_decoder.c
-	cc -c ${CRASH_CFLAGS} unwind.c -DREDHAT -DUNWIND_V2 -o unwind_v2.o ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} unwind.c -DREDHAT -DUNWIND_V2 -o unwind_v2.o ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 unwind_v3.o: ${GENERIC_HFILES} ${UNWIND_HFILES} unwind.c unwind_decoder.c
-	cc -c ${CRASH_CFLAGS} unwind.c -DREDHAT -DUNWIND_V3 -o unwind_v3.o ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} unwind.c -DREDHAT -DUNWIND_V3 -o unwind_v3.o ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 lkcd_fix_mem.o: ${GENERIC_HFILES} ${LKCD_HFILES} lkcd_fix_mem.c
-	cc -c ${CRASH_CFLAGS} lkcd_fix_mem.c -DMCLX ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} lkcd_fix_mem.c -DMCLX ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 xen_hyper.o: ${GENERIC_HFILES} xen_hyper.c
-	cc -c ${CRASH_CFLAGS} xen_hyper.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} xen_hyper.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 xen_hyper_command.o: ${GENERIC_HFILES} xen_hyper_command.c
-	cc -c ${CRASH_CFLAGS} xen_hyper_command.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} xen_hyper_command.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 xen_hyper_global_data.o: ${GENERIC_HFILES} xen_hyper_global_data.c
-	cc -c ${CRASH_CFLAGS} xen_hyper_global_data.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} xen_hyper_global_data.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 xen_hyper_dump_tables.o: ${GENERIC_HFILES} xen_hyper_dump_tables.c
-	cc -c ${CRASH_CFLAGS} xen_hyper_dump_tables.c ${WARNING_OPTIONS} ${WARNING_ERROR}
+	$(CC) -c ${CRASH_CFLAGS} xen_hyper_dump_tables.c ${WARNING_OPTIONS} ${WARNING_ERROR}
 
 ${PROGRAM}: force
 	@make --no-print-directory all
@@ -499,7 +505,7 @@ ${PROGRAM}d: daemon_deprecated make_configure
 	@make --no-print-directory daemon 
 
 daemon: ${DAEMON_OBJECT_FILES}
-	cc ${LDFLAGS} -o ${PROGRAM}d ${DAEMON_OBJECT_FILES} build_data.o -lz 
+	$(CC) ${LDFLAGS} -o ${PROGRAM}d ${DAEMON_OBJECT_FILES} build_data.o -lz 
 
 files: make_configure
 	@./configure -q -b
diff --git a/extensions/Makefile b/extensions/Makefile
index 17d4668..e8442bd 100644
--- a/extensions/Makefile
+++ b/extensions/Makefile
@@ -24,6 +24,10 @@
 # and that makefile will be invoked. 
 # 
 
+ifeq ($(CC), )
+CC = gcc
+endif
+
 CONTRIB_SO := $(patsubst %.c,%.so,$(wildcard *.c))
 
 all: link_defs $(CONTRIB_SO)
@@ -36,8 +40,8 @@ $(CONTRIB_SO): %.so: %.c defs.h
 	@if [ -f $*.mk ]; then \
 		make -f $*.mk; \
 	else \
-		echo "gcc -Wall -nostartfiles -shared -rdynamic -o $@ $*.c -fPIC -D$(TARGET) $(TARGET_CFLAGS) $(GDB_FLAGS)"; \
-		gcc -Wall -nostartfiles -shared -rdynamic -o $@ $*.c -fPIC -D$(TARGET) $(TARGET_CFLAGS) $(GDB_FLAGS); \
+		echo "$(CC) -Wall -nostartfiles -shared -rdynamic -o $@ $*.c -fPIC -D$(TARGET) $(TARGET_CFLAGS) $(GDB_FLAGS)"; \
+		$(CC) -Wall -nostartfiles -shared -rdynamic -o $@ $*.c -fPIC -D$(TARGET) $(TARGET_CFLAGS) $(GDB_FLAGS); \
 	fi
 
 clean:
diff --git a/extensions/sial.mk b/extensions/sial.mk
index 8923786..c6d37ee 100644
--- a/extensions/sial.mk
+++ b/extensions/sial.mk
@@ -9,6 +9,10 @@
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 # GNU General Public License for more details.
 
+ifeq ($(CC), )
+CC = gcc
+endif
+
 TARGET_FLAGS = -D$(TARGET) $(TARGET_CFLAGS)
 
 all:
@@ -23,7 +27,7 @@ lib-sial:
 	cd libsial && make
         
 sial.so: ../defs.h sial.c lib-sial
-	gcc -g -I.. -Ilibsial -I../$(GDB)/bfd -I../$(GDB)/include -I../$(GDB)/gdb -I../$(GDB)/gdb/config -I../$(GDB)/gdb/common -I../$(GDB) -nostartfiles -shared -rdynamic -o sial.so sial.c -fPIC $(TARGET_FLAGS) $(GDB_FLAGS) -Llibsial -lsial 
+	$(CC) -g -I.. -Ilibsial -I../$(GDB)/bfd -I../$(GDB)/include -I../$(GDB)/gdb -I../$(GDB)/gdb/config -I../$(GDB)/gdb/common -I../$(GDB) -nostartfiles -shared -rdynamic -o sial.so sial.c -fPIC $(TARGET_FLAGS) $(GDB_FLAGS) -Llibsial -lsial 
 
 clean:
 	cd libsial && make clean
diff --git a/extensions/snap.mk b/extensions/snap.mk
index 8b48078..69df3e8 100644
--- a/extensions/snap.mk
+++ b/extensions/snap.mk
@@ -13,6 +13,10 @@
 # GNU General Public License for more details.
 #
 
+ifeq ($(CC), )
+CC = gcc
+endif
+
 ifeq ($(shell arch), i686)
   TARGET=X86
   TARGET_CFLAGS=-D_FILE_OFFSET_BITS=64
@@ -43,4 +47,4 @@ endif
 all: snap.so
 	
 snap.so: $(INCDIR)/defs.h snap.c 
-	gcc -Wall -I$(INCDIR) -nostartfiles -shared -rdynamic -o snap.so snap.c -fPIC -D$(TARGET) $(TARGET_CFLAGS) $(GDB_FLAGS)
+	$(CC) -Wall -I$(INCDIR) -nostartfiles -shared -rdynamic -o snap.so snap.c -fPIC -D$(TARGET) $(TARGET_CFLAGS) $(GDB_FLAGS)
-- 
1.7.0.4

--
Crash-utility mailing list
Crash-utility@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/crash-utility

[Index of Archives]     [Fedora Development]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [KDE Users]     [Fedora Tools]

 

Powered by Linux