blob: 15ced551db5ac4cc9f1313ac0d975e8404028528 [file] [log] [blame]
Patrick Williams03907ee2022-05-01 06:28:52 -05001From 71b5a3905d5cd0feca88a0d61d7657ba5296a052 Mon Sep 17 00:00:00 2001
Patrick Williamsddad1a12017-02-23 20:36:32 -06002From: Mingli Yu <mingli.yu@windriver.com>
Patrick Williams03907ee2022-05-01 06:28:52 -05003Date: Sun, 24 Apr 2022 17:25:33 +0800
Patrick Williamsddad1a12017-02-23 20:36:32 -06004Subject: [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
Andrew Geissler6aa7eec2023-03-03 12:41:14 -060013Upstream-Status: Inappropriate [oe specific]
Patrick Williamsddad1a12017-02-23 20:36:32 -060014
15Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
Andrew Geissler595f6302022-01-24 19:11:47 +000016
17[2021-11-18] Patch updated to use CFLAGS_COMMON for zstd
18Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org>
Patrick Williams03907ee2022-05-01 06:28:52 -050019
20Rebase to 1.7.1
21Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
Patrick Williamsddad1a12017-02-23 20:36:32 -060022---
Patrick Williams03907ee2022-05-01 06:28:52 -050023 Makefile | 42 ++++++++++++++++++++++--------------------
24 1 file changed, 22 insertions(+), 20 deletions(-)
Patrick Williamsddad1a12017-02-23 20:36:32 -060025
William A. Kennington IIIb95905d2021-06-02 12:40:56 -070026--- a/Makefile
27+++ b/Makefile
Brad Bishop26bdd442019-08-16 17:08:17 -040028@@ -8,12 +8,6 @@ ifeq ($(strip $CC),)
Patrick Williamsddad1a12017-02-23 20:36:32 -060029 CC = gcc
30 endif
31
Brad Bishop26bdd442019-08-16 17:08:17 -040032-CFLAGS_BASE := $(CFLAGS) -g -O2 -Wall -D_FILE_OFFSET_BITS=64 \
33- -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE
34-CFLAGS := $(CFLAGS_BASE) -DVERSION='"$(VERSION)"' -DRELEASE_DATE='"$(DATE)"'
35-CFLAGS_ARCH := $(CFLAGS_BASE)
Patrick Williamsddad1a12017-02-23 20:36:32 -060036-# LDFLAGS = -L/usr/local/lib -I/usr/local/include
37-
38 HOST_ARCH := $(shell uname -m)
39 # Use TARGET as the target architecture if specified.
40 # Defaults to uname -m
Patrick Williams03907ee2022-05-01 06:28:52 -050041@@ -24,26 +18,34 @@ endif
42 ARCH := $(shell echo ${TARGET} | sed -e s/i.86/x86/ -e s/sun4u/sparc64/ \
43 -e s/arm.*/arm/ -e s/sa110/arm/ \
44 -e s/s390x/s390/ -e s/parisc64/parisc/ \
Patrick Williamsddad1a12017-02-23 20:36:32 -060045- -e s/ppc64/powerpc64/ -e s/ppc/powerpc32/)
Patrick Williams03907ee2022-05-01 06:28:52 -050046+ -e s/ppc64/powerpc64/ -e s/ppc/powerpc32/ \
47+ -e s/_powerpc_/_powerpc32_/)
Patrick Williamsddad1a12017-02-23 20:36:32 -060048
49 CROSS :=
50 ifneq ($(TARGET), $(HOST_ARCH))
51 CROSS := -U__$(HOST_ARCH)__
52 endif
53
54-CFLAGS += -D__$(ARCH)__ $(CROSS)
Patrick Williams03907ee2022-05-01 06:28:52 -050055 CFLAGS_ARCH += -D__$(ARCH)__ $(CROSS)
Patrick Williamsddad1a12017-02-23 20:36:32 -060056
57-ifeq ($(ARCH), powerpc64)
58-CFLAGS += -m64
59+ifeq ($(ARCH), __powerpc64__)
60 CFLAGS_ARCH += -m64
61 endif
62
63-ifeq ($(ARCH), powerpc32)
64-CFLAGS += -m32
65+ifeq ($(ARCH), __powerpc32__)
66 CFLAGS_ARCH += -m32
67 endif
68
69+CFLAGS_ARCH += $(CFLAGS) \
Brad Bishop26bdd442019-08-16 17:08:17 -040070+ -D_FILE_OFFSET_BITS=64 \
71+ -D_LARGEFILE_SOURCE \
72+ -D_LARGEFILE64_SOURCE
Patrick Williamsddad1a12017-02-23 20:36:32 -060073+
74+CFLAGS_COMMON = $(CFLAGS_ARCH) \
Brad Bishop26bdd442019-08-16 17:08:17 -040075+ -DVERSION='"$(VERSION)"' \
76+ -DRELEASE_DATE='"$(DATE)"'
Patrick Williamsddad1a12017-02-23 20:36:32 -060077+
Patrick Williams03907ee2022-05-01 06:28:52 -050078+
Patrick Williamsddad1a12017-02-23 20:36:32 -060079 SRC_BASE = makedumpfile.c makedumpfile.h diskdump_mod.h sadump_mod.h sadump_info.h
Patrick Williams03907ee2022-05-01 06:28:52 -050080 SRC_PART = print_info.c dwarf_info.c elf_info.c erase_info.c sadump_info.c cache.c tools.c printk.c detect_cycle.c
Patrick Williamsddad1a12017-02-23 20:36:32 -060081 OBJ_PART=$(patsubst %.c,%.o,$(SRC_PART))
Patrick Williams03907ee2022-05-01 06:28:52 -050082@@ -52,12 +54,12 @@ OBJ_ARCH=$(patsubst %.c,%.o,$(SRC_ARCH))
Patrick Williamsddad1a12017-02-23 20:36:32 -060083
Andrew Geissler82c905d2020-04-13 13:39:40 -050084 LIBS = -ldw -lbz2 -ldl -lelf -lz
Patrick Williamsddad1a12017-02-23 20:36:32 -060085 ifneq ($(LINKTYPE), dynamic)
Andrew Geissler4b7c1152020-11-30 19:55:29 -060086-LIBS := -static $(LIBS) -llzma
87+LIBS := $(LIBS) -llzma
Patrick Williamsddad1a12017-02-23 20:36:32 -060088 endif
89
90 ifeq ($(USELZO), on)
91 LIBS := -llzo2 $(LIBS)
92-CFLAGS += -DUSELZO
93+CFLAGS_COMMON += -DUSELZO
94 endif
95
96 ifeq ($(USESNAPPY), on)
Patrick Williams03907ee2022-05-01 06:28:52 -050097@@ -65,12 +67,12 @@ LIBS := -lsnappy $(LIBS)
Andrew Geissler4b7c1152020-11-30 19:55:29 -060098 ifneq ($(LINKTYPE), dynamic)
99 LIBS := $(LIBS) -lstdc++
100 endif
Patrick Williamsddad1a12017-02-23 20:36:32 -0600101-CFLAGS += -DUSESNAPPY
102+CFLAGS_COMMON += -DUSESNAPPY
103 endif
104
Andrew Geissler595f6302022-01-24 19:11:47 +0000105 ifeq ($(USEZSTD), on)
106 LIBS := -lzstd $(LIBS)
107-CFLAGS += -DUSEZSTD
108+CFLAGS_COMMON += -DUSEZSTD
109 endif
110
111 ifeq ($(DEBUG), on)
Patrick Williams03907ee2022-05-01 06:28:52 -0500112@@ -104,14 +106,14 @@ LIBS := $(LIBS) $(call try-run,\
Patrick Williamsddad1a12017-02-23 20:36:32 -0600113 all: makedumpfile
114
115 $(OBJ_PART): $(SRC_PART)
116- $(CC) $(CFLAGS) -c -o ./$@ $(VPATH)$(@:.o=.c)
117+ $(CC) $(CFLAGS_COMMON) -c -o ./$@ $(VPATH)$(@:.o=.c)
118
119 $(OBJ_ARCH): $(SRC_ARCH)
120 @mkdir -p $(@D)
121 $(CC) $(CFLAGS_ARCH) -c -o ./$@ $(VPATH)$(@:.o=.c)
122
123 makedumpfile: $(SRC_BASE) $(OBJ_PART) $(OBJ_ARCH)
124- $(CC) $(CFLAGS) $(LDFLAGS) $(OBJ_PART) $(OBJ_ARCH) -rdynamic -o $@ $< $(LIBS)
125+ $(CC) $(CFLAGS_COMMON) $(LDFLAGS) $(OBJ_PART) $(OBJ_ARCH) -rdynamic -o $@ $< $(LIBS)
Patrick Williams03907ee2022-05-01 06:28:52 -0500126 @sed -e "s/@DATE@/$(DATE)/" \
127 -e "s/@VERSION@/$(VERSION)/" \
128 $(VPATH)makedumpfile.8.in > $(VPATH)makedumpfile.8
129@@ -120,7 +122,7 @@ makedumpfile: $(SRC_BASE) $(OBJ_PART) $(
130 $(VPATH)makedumpfile.conf.5.in > $(VPATH)makedumpfile.conf.5
Patrick Williamsddad1a12017-02-23 20:36:32 -0600131
132 eppic_makedumpfile.so: extension_eppic.c
133- $(CC) $(CFLAGS) $(LDFLAGS) -shared -rdynamic -o $@ extension_eppic.c -fPIC -leppic -ltinfo
134+ $(CC) $(CFLAGS_COMMON) $(LDFLAGS) -shared -rdynamic -o $@ extension_eppic.c -fPIC -leppic -ltinfo
135
136 clean:
Patrick Williams03907ee2022-05-01 06:28:52 -0500137 rm -f $(OBJ) $(OBJ_PART) $(OBJ_ARCH) makedumpfile makedumpfile.8 makedumpfile.conf.5