blob: 3211402add869a35832ee5a42788f5f67858486b [file] [log] [blame]
jb.qi4b7d3e92023-09-26 23:30:34 -07001SHELL = /bin/sh
2RM = rm -f
3
4LOCAL_CFLAGS := -Wall \
5 -std=gnu++14 \
6 -g -Os \
7 -flto \
8 -fPIC \
9 -fpermissive \
10
11
12
13$(warning ################# lynq qser autosuspend API ROOT: $(ROOT),includedir:$(includedir))
14LOCAL_PATH = .
15
16LOCAL_C_INCLUDES = \
17 -I. \
18 -I$(LOCAL_PATH)/include/ \
19 -I$(LOCAL_PATH)/ \
20 -I$(ROOT)$(includedir)/logger \
21 -I$(ROOT)$(includedir)/liblog \
22
23
24
25
26LOCAL_LIBS := \
27 -L. \
28 -lstdc++ \
29 -lcutils \
30 -lutils \
31 -lpthread \
32 -llynq-log \
33 -lbsp \
34
35
36SOURCES = $(wildcard *.cpp)
37
38EXECUTABLE = liblynq-gpio.so
39
40OBJECTS=$(SOURCES:.cpp=.o)
41
42
43.PHONY: build clean install pack_rootfs
44all: build
45$(EXECUTABLE): $(OBJECTS)
46 $(CXX) -shared -Wl,--no-undefined $(OBJECTS) $(LOCAL_LIBS) $(LOCAL_CFLAGS) $(LOCAL_C_INCLUDES) -o $@
47
48%.o : %.cpp
49 $(CXX) $(LOCAL_C_INCLUDES) $(LOCAL_CFLAGS) $(LOCAL_LIBS) -o $@ -c $<
50
51build: $(EXECUTABLE)
52 $(warning ########## build $(EXECUTABLE) ##########)
53install:
54 mkdir -p $(ROOT)$(base_libdir)/
55 install $(EXECUTABLE) $(ROOT)$(base_libdir)/
56 mkdir -p $(ROOT)$(includedir)/$(NAME)/sdk
57pack_rootfs:
58 mkdir -p $(PACK_INITRAMFS_TO)$(base_libdir)/
59 cp -af $(EXECUTABLE) $(PACK_INITRAMFS_TO)$(base_libdir)/
60 $(CROSS)strip $(PACK_INITRAMFS_TO)$(base_libdir)/$(EXECUTABLE)
61 mkdir -p $(PACK_TO)$(base_libdir)/
62 cp -af $(EXECUTABLE) $(PACK_TO)$(base_libdir)/
63 $(CROSS)strip $(PACK_TO)$(base_libdir)/$(EXECUTABLE)
64.PHONY: clean
65clean:
66 $(RM) $(OBJECTS) $(EXECUTABLE)
67 -find . -name "*.o" -delete