blob: a47806526e2944d6e2c58ab489f8e827a009f57f [file] [log] [blame]
Brad Bishop1a4b7ee2018-12-16 17:11:34 -08001From 8eeb1b15608ce1a9a1f0d5417938fd6da4504406 Mon Sep 17 00:00:00 2001
Patrick Williamsddad1a12017-02-23 20:36:32 -06002From: Mingli Yu <mingli.yu@windriver.com>
3Date: Thu, 21 Jul 2016 18:06:21 +0800
4Subject: [PATCH] makedumpfile: replace hardcode CFLAGS
5
6* Create alias for target such as powerpc as powerpc32
7* Remove hardcode CFLAGS
8* Add CFLAGS_COMMON to instead of CFLAGS so can flexibly
9 customize CFLAGS and not hardcode the CFLAGS as previously
10* Forcibly to link dynamic library as the poky build
11 system doesn't build static library by default
12
13Upstream-Status: Inappropriate[oe specific]
14
15Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080016
Patrick Williamsddad1a12017-02-23 20:36:32 -060017---
18 Makefile | 46 +++++++++++++++++++++++-----------------------
19 1 file changed, 23 insertions(+), 23 deletions(-)
20
21diff --git a/Makefile b/Makefile
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080022index 612b9d0..f6d6265 100644
Patrick Williamsddad1a12017-02-23 20:36:32 -060023--- a/Makefile
24+++ b/Makefile
25@@ -8,13 +8,6 @@ ifeq ($(strip $CC),)
26 CC = gcc
27 endif
28
29-CFLAGS = -g -O2 -Wall -D_FILE_OFFSET_BITS=64 \
30- -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE \
31- -DVERSION='"$(VERSION)"' -DRELEASE_DATE='"$(DATE)"'
32-CFLAGS_ARCH = -g -O2 -Wall -D_FILE_OFFSET_BITS=64 \
33- -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE
34-# LDFLAGS = -L/usr/local/lib -I/usr/local/include
35-
36 HOST_ARCH := $(shell uname -m)
37 # Use TARGET as the target architecture if specified.
38 # Defaults to uname -m
39@@ -22,29 +15,36 @@ ifeq ($(strip($TARGET)),)
40 TARGET := $(HOST_ARCH)
41 endif
42
43-ARCH := $(shell echo ${TARGET} | sed -e s/i.86/x86/ -e s/sun4u/sparc64/ \
44- -e s/arm.*/arm/ -e s/sa110/arm/ \
45- -e s/s390x/s390/ -e s/parisc64/parisc/ \
46- -e s/ppc64/powerpc64/ -e s/ppc/powerpc32/)
47+ARCH := $(shell echo __${TARGET}__ | sed -e s/i.86/x86/ -e s/sun4u/sparc64/ \
48+ -e s/arm.*/arm/ -e s/sa110/arm/ \
49+ -e s/s390x/s390/ -e s/parisc64/parisc/ \
50+ -e s/ppc64/powerpc64/ -e s/ppc/powerpc32/ \
51+ -e s/_powerpc_/_powerpc32_/)
52
53 CROSS :=
54 ifneq ($(TARGET), $(HOST_ARCH))
55 CROSS := -U__$(HOST_ARCH)__
56 endif
57
58-CFLAGS += -D__$(ARCH)__ $(CROSS)
59-CFLAGS_ARCH += -D__$(ARCH)__ $(CROSS)
60+CFLAGS_ARCH += -D$(ARCH) $(CROSS)
61
62-ifeq ($(ARCH), powerpc64)
63-CFLAGS += -m64
64+ifeq ($(ARCH), __powerpc64__)
65 CFLAGS_ARCH += -m64
66 endif
67
68-ifeq ($(ARCH), powerpc32)
69-CFLAGS += -m32
70+ifeq ($(ARCH), __powerpc32__)
71 CFLAGS_ARCH += -m32
72 endif
73
74+CFLAGS_ARCH += $(CFLAGS) \
75+ -D_FILE_OFFSET_BITS=64 \
76+ -D_LARGEFILE_SOURCE \
77+ -D_LARGEFILE64_SOURCE
78+
79+CFLAGS_COMMON = $(CFLAGS_ARCH) \
80+ -DVERSION='"$(VERSION)"' \
81+ -DRELEASE_DATE='"$(DATE)"'
82+
83 SRC_BASE = makedumpfile.c makedumpfile.h diskdump_mod.h sadump_mod.h sadump_info.h
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080084 SRC_PART = print_info.c dwarf_info.c elf_info.c erase_info.c sadump_info.c cache.c tools.c
Patrick Williamsddad1a12017-02-23 20:36:32 -060085 OBJ_PART=$(patsubst %.c,%.o,$(SRC_PART))
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080086@@ -53,17 +53,17 @@ OBJ_ARCH=$(patsubst %.c,%.o,$(SRC_ARCH))
Patrick Williamsddad1a12017-02-23 20:36:32 -060087
88 LIBS = -ldw -lbz2 -lebl -ldl -lelf -lz
89 ifneq ($(LINKTYPE), dynamic)
90-LIBS := -static $(LIBS)
91+LIBS := $(LIBS)
92 endif
93
94 ifeq ($(USELZO), on)
95 LIBS := -llzo2 $(LIBS)
96-CFLAGS += -DUSELZO
97+CFLAGS_COMMON += -DUSELZO
98 endif
99
100 ifeq ($(USESNAPPY), on)
101 LIBS := -lsnappy $(LIBS)
102-CFLAGS += -DUSESNAPPY
103+CFLAGS_COMMON += -DUSESNAPPY
104 endif
105
106 LIBS := -lpthread $(LIBS)
Brad Bishop1a4b7ee2018-12-16 17:11:34 -0800107@@ -71,14 +71,14 @@ LIBS := -lpthread $(LIBS)
Patrick Williamsddad1a12017-02-23 20:36:32 -0600108 all: makedumpfile
109
110 $(OBJ_PART): $(SRC_PART)
111- $(CC) $(CFLAGS) -c -o ./$@ $(VPATH)$(@:.o=.c)
112+ $(CC) $(CFLAGS_COMMON) -c -o ./$@ $(VPATH)$(@:.o=.c)
113
114 $(OBJ_ARCH): $(SRC_ARCH)
115 @mkdir -p $(@D)
116 $(CC) $(CFLAGS_ARCH) -c -o ./$@ $(VPATH)$(@:.o=.c)
117
118 makedumpfile: $(SRC_BASE) $(OBJ_PART) $(OBJ_ARCH)
119- $(CC) $(CFLAGS) $(LDFLAGS) $(OBJ_PART) $(OBJ_ARCH) -rdynamic -o $@ $< $(LIBS)
120+ $(CC) $(CFLAGS_COMMON) $(LDFLAGS) $(OBJ_PART) $(OBJ_ARCH) -rdynamic -o $@ $< $(LIBS)
121 echo .TH MAKEDUMPFILE 8 \"$(DATE)\" \"makedumpfile v$(VERSION)\" \"Linux System Administrator\'s Manual\" > temp.8
122 grep -v "^.TH MAKEDUMPFILE 8" $(VPATH)makedumpfile.8 >> temp.8
123 mv temp.8 makedumpfile.8
Brad Bishop1a4b7ee2018-12-16 17:11:34 -0800124@@ -89,7 +89,7 @@ makedumpfile: $(SRC_BASE) $(OBJ_PART) $(OBJ_ARCH)
Patrick Williamsddad1a12017-02-23 20:36:32 -0600125 gzip -c ./makedumpfile.conf.5 > ./makedumpfile.conf.5.gz
126
127 eppic_makedumpfile.so: extension_eppic.c
128- $(CC) $(CFLAGS) $(LDFLAGS) -shared -rdynamic -o $@ extension_eppic.c -fPIC -leppic -ltinfo
129+ $(CC) $(CFLAGS_COMMON) $(LDFLAGS) -shared -rdynamic -o $@ extension_eppic.c -fPIC -leppic -ltinfo
130
131 clean:
132 rm -f $(OBJ) $(OBJ_PART) $(OBJ_ARCH) makedumpfile makedumpfile.8.gz makedumpfile.conf.5.gz