1 # SPDX-License-Identifier: GPL-2.0
2 include ..
/..
/scripts
/Makefile.
include
3 include ..
/..
/scripts
/utilities.mak
# QUIET_CLEAN
6 srctree
:= $(patsubst %/,%,$(dir $(CURDIR
)))
7 srctree
:= $(patsubst %/,%,$(dir $(srctree
)))
8 srctree
:= $(patsubst %/,%,$(dir $(srctree
)))
9 #$(info Determined 'srctree' to be $(srctree))
12 CC ?
= $(CROSS_COMPILE
)gcc
13 LD ?
= $(CROSS_COMPILE
)ld
14 AR ?
= $(CROSS_COMPILE
)ar
18 MAKEFLAGS
+= --no-print-directory
20 LIBFILE
= $(OUTPUT
)libsubcmd.a
22 CFLAGS
:= -ggdb3
-Wall
-Wextra
-std
=gnu99
-fPIC
25 ifeq ($(feature-fortify-source
), 1)
26 CFLAGS
+= -U_FORTIFY_SOURCE
-D_FORTIFY_SOURCE
=2
32 else ifeq ($(CC_NO_CLANG
), 0)
38 # Treat warnings as errors unless directed not to
43 CFLAGS
+= -D_LARGEFILE64_SOURCE
-D_FILE_OFFSET_BITS
=64 -D_GNU_SOURCE
45 CFLAGS
+= -I
$(srctree
)/tools
/include/
47 CFLAGS
+= $(EXTRA_WARNINGS
) $(EXTRA_CFLAGS
)
49 SUBCMD_IN
:= $(OUTPUT
)libsubcmd-in.o
53 export srctree OUTPUT CC LD CFLAGS V
54 include $(srctree
)/tools
/build
/Makefile.
include
56 all: fixdep
$(LIBFILE
)
59 @
$(MAKE
) $(build
)=libsubcmd
61 $(LIBFILE
): $(SUBCMD_IN
)
62 $(QUIET_AR
)$(RM
) $@
&& $(AR
) rcs
$@
$(SUBCMD_IN
)
65 $(call QUIET_CLEAN
, libsubcmd
) $(RM
) $(LIBFILE
); \
66 find
$(if
$(OUTPUT
),$(OUTPUT
),.
) -name \
*.o
-or
-name \
*.o.cmd
-or
-name \
*.o.d | xargs
$(RM
)