From 6cad76212a6aa0b26e6646f261c17ffffdcbfbf3 Mon Sep 17 00:00:00 2001 From: Guillem Jover Date: Sun, 12 Apr 2020 04:01:27 +0200 Subject: [PATCH] [PATCH libaio 11/11] build: Honour user build flags CPPFLAGS, CFLAGS and LDFLAGS are user flags, which we need to preserve. Any required flag that the build system needs, has to be set in some other flag so that the build will succeed even if the user flags are passed. Signed-off-by: Guillem Jover Gbp-Pq: Name 0011-build-Honour-user-build-flags.patch --- harness/Makefile | 7 +++++-- src/Makefile | 18 +++++++++--------- 2 files changed, 14 insertions(+), 11 deletions(-) diff --git a/harness/Makefile b/harness/Makefile index 84e03a6..42aa49a 100644 --- a/harness/Makefile +++ b/harness/Makefile @@ -6,8 +6,11 @@ PROGS:=$(PARTPROGS) $(EXTRAPROGS) HARNESS_SRCS:=main.c # io_queue.c -CFLAGS+=-Wall -I../src -g -O2 +MK_CPPFLAGS := -I../src $(CPPFLAGS) +CFLAGS = -Wall -g -O2 #-lpthread -lrt +MK_CFLAGS = $(CFLAGS) +MK_LDFLAGS = main.c $(LIBAIO) -lpthread $(LDFLAGS) # Change this on the build line to run tests against the installed libraries: # make LIBAIO=-laio partcheck @@ -16,7 +19,7 @@ LIBAIO?=../src/libaio.a all: $(PROGS) $(PROGS): %.p: %.t $(HARNESS_SRCS) - $(CC) $(CFLAGS) -DTEST_NAME=\"$<\" -o $@ main.c $(LIBAIO) -lpthread + $(CC) $(MK_CPPFLAGS) $(MK_CFLAGS) -DTEST_NAME=\"$<\" -o $@ $(MK_LDFLAGS) clean: rm -f $(PROGS) *.o runtests.out rofile wofile rwfile diff --git a/src/Makefile b/src/Makefile index a53c43c..f6215f9 100644 --- a/src/Makefile +++ b/src/Makefile @@ -3,12 +3,12 @@ prefix=/usr includedir=$(prefix)/include libdir=$(prefix)/lib -CFLAGS ?= -g -fomit-frame-pointer -O2 -CFLAGS += -Wall -I. -fPIC -SO_CFLAGS=-shared $(CFLAGS) -L_CFLAGS=$(CFLAGS) -LINK_FLAGS= -LINK_FLAGS+=$(LDFLAGS) +MK_CPPFLAGS = -I. +MK_CFLAGS = -fPIC $(CFLAGS) +CFLAGS = -Wall -g -fomit-frame-pointer -O2 +SO_CFLAGS = -shared $(MK_CFLAGS) +L_CFLAGS = $(MK_CFLAGS) +MK_LDFLAGS = $(LDFLAGS) ENABLE_SHARED ?= 1 soname=libaio.so.1 @@ -43,10 +43,10 @@ libaio_sobjs := $(patsubst %.c,%.os,$(libaio_srcs)) $(libaio_objs) $(libaio_sobjs): libaio.h vsys_def.h %.os: %.c - $(CC) $(SO_CFLAGS) -c -o $@ $< + $(CC) $(MK_CPPFLAGS) $(SO_CFLAGS) -c -o $@ $< %.ol: %.c - $(CC) $(L_CFLAGS) -c -o $@ $< + $(CC) $(MK_CPPFLAGS) $(L_CFLAGS) -c -o $@ $< AR ?= ar RANLIB ?= ranlib @@ -56,7 +56,7 @@ libaio.a: $(libaio_objs) $(RANLIB) libaio.a $(libname): $(libaio_sobjs) libaio.map - $(CC) $(SO_CFLAGS) -Wl,--version-script=libaio.map -Wl,-soname=$(soname) -o $@ $(libaio_sobjs) $(LINK_FLAGS) + $(CC) $(SO_CFLAGS) -Wl,--version-script=libaio.map -Wl,-soname=$(soname) -o $@ $(libaio_sobjs) $(MK_LDFLAGS) install: $(all_targets) install -D -m 644 libaio.h $(DESTDIR)$(includedir)/libaio.h -- 2.30.2