xref: /linux-6.15/tools/lib/api/Makefile (revision 553873e1)
1*553873e1SBorislav Petkovinclude ../../scripts/Makefile.include
2*553873e1SBorislav Petkovinclude ../../perf/config/utilities.mak		# QUIET_CLEAN
3*553873e1SBorislav Petkov
4*553873e1SBorislav PetkovCC = $(CROSS_COMPILE)gcc
5*553873e1SBorislav PetkovAR = $(CROSS_COMPILE)ar
6*553873e1SBorislav Petkov
7*553873e1SBorislav Petkov# guard against environment variables
8*553873e1SBorislav PetkovLIB_H=
9*553873e1SBorislav PetkovLIB_OBJS=
10*553873e1SBorislav Petkov
11*553873e1SBorislav PetkovLIB_H += fs/debugfs.h
12*553873e1SBorislav Petkov
13*553873e1SBorislav PetkovLIB_OBJS += $(OUTPUT)fs/debugfs.o
14*553873e1SBorislav Petkov
15*553873e1SBorislav PetkovLIBFILE = libapikfs.a
16*553873e1SBorislav Petkov
17*553873e1SBorislav PetkovCFLAGS = -ggdb3 -Wall -Wextra -std=gnu99 -Werror -O6 -D_FORTIFY_SOURCE=2 $(EXTRA_WARNINGS) $(EXTRA_CFLAGS) -fPIC
18*553873e1SBorislav PetkovEXTLIBS = -lelf -lpthread -lrt -lm
19*553873e1SBorislav PetkovALL_CFLAGS = $(CFLAGS) $(BASIC_CFLAGS) -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
20*553873e1SBorislav PetkovALL_LDFLAGS = $(LDFLAGS)
21*553873e1SBorislav Petkov
22*553873e1SBorislav PetkovRM = rm -f
23*553873e1SBorislav Petkov
24*553873e1SBorislav Petkov$(LIBFILE): $(LIB_OBJS)
25*553873e1SBorislav Petkov	$(QUIET_AR)$(RM) $@ && $(AR) rcs $(OUTPUT)$@ $(LIB_OBJS)
26*553873e1SBorislav Petkov
27*553873e1SBorislav Petkov$(LIB_OBJS): $(LIB_H)
28*553873e1SBorislav Petkov
29*553873e1SBorislav Petkovlibapi_dirs:
30*553873e1SBorislav Petkov	$(QUIET_MKDIR)mkdir -p $(OUTPUT)fs/
31*553873e1SBorislav Petkov
32*553873e1SBorislav Petkov$(OUTPUT)%.o: %.c libapi_dirs
33*553873e1SBorislav Petkov	$(QUIET_CC)$(CC) -o $@ -c $(ALL_CFLAGS) $<
34*553873e1SBorislav Petkov$(OUTPUT)%.s: %.c libapi_dirs
35*553873e1SBorislav Petkov	$(QUIET_CC)$(CC) -S $(ALL_CFLAGS) $<
36*553873e1SBorislav Petkov$(OUTPUT)%.o: %.S libapi_dirs
37*553873e1SBorislav Petkov	$(QUIET_CC)$(CC) -o $@ -c $(ALL_CFLAGS) $<
38*553873e1SBorislav Petkov
39*553873e1SBorislav Petkovclean:
40*553873e1SBorislav Petkov	$(call QUIET_CLEAN, libapi) $(RM) $(LIB_OBJS) $(LIBFILE)
41*553873e1SBorislav Petkov
42*553873e1SBorislav Petkov.PHONY: clean
43