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)
# gcc-11 does not like the test case in 3.t that
# passes an invalid pointer (-1) to the kernel, so
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
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
$(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
$(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