2 # Copyright 2005-2006 Timo Hirvonen
4 # This file is licensed under the GPLv2.
6 # cmd macro copied from kbuild (Linux kernel build system)
10 # make V=1 clean (default)
13 # build verbosity (0-2), default is 1
14 ifneq ($(origin V
),command line
)
17 ifneq ($(findstring s
,$(MAKEFLAGS
)),)
34 # simple wrapper around install(1)
36 # - creates directories automatically
37 # - adds $(DESTDIR) to front of files
38 INSTALL
:= @
$(topdir
)/scripts
/install
39 INSTALL_LOG
:= $(topdir
)/.
install.log
41 dependencies
:= $(wildcard .dep-
*)
42 clean := $(dependencies
)
48 export INSTALL_LOG LC_ALL LANG GINSTALL
50 # remove files generated by make
54 # remove files generated by make and configure
59 @
$(topdir
)/scripts
/uninstall
64 # object files for programs and static libs
74 # object files for shared libs
84 # CC for program object files (.o)
86 cmd_cc
= $(CC
) -c
$(CFLAGS
) -o
$@
$<
88 # CC for shared library and dynamically loadable module objects (.lo)
89 quiet_cmd_cc_lo
= CC
$@
90 cmd_cc_lo
= $(CC
) -c
$(CFLAGS
) $(SOFLAGS
) -o
$@
$<
92 # LD for programs, optional parameter: libraries
94 cmd_ld
= $(LD
) $(LDFLAGS
) -o
$@
$^
$(1)
96 # LD for shared libraries, optional parameter: libraries
97 quiet_cmd_ld_so
= LD
$@
98 cmd_ld_so
= $(LD
) $(LDSOFLAGS
) $(LDFLAGS
) -o
$@
$^
$(1)
100 # LD for dynamically loadable modules, optional parameter: libraries
101 quiet_cmd_ld_dl
= LD
$@
102 cmd_ld_dl
= $(LD
) $(LDDLFLAGS
) $(LDFLAGS
) -o
$@
$^
$(1)
104 # CXX for program object files (.o)
105 quiet_cmd_cxx
= CXX
$@
106 cmd_cxx
= $(CXX
) -c
$(CXXFLAGS
) -o
$@
$<
108 # CXX for shared library and dynamically loadable module objects (.lo)
109 quiet_cmd_cxx_lo
= CXX
$@
110 cmd_cxx_lo
= $(CXX
) -c
$(CXXFLAGS
) $(SOFLAGS
) -o
$@
$<
112 # CXXLD for programs, optional parameter: libraries
113 quiet_cmd_cxxld
= CXXLD
$@
114 cmd_cxxld
= $(CXXLD
) $(CXXLDFLAGS
) -o
$@
$^
$(1)
116 # CXXLD for shared libraries, optional parameter: libraries
117 quiet_cmd_cxxld_so
= CXXLD
$@
118 cmd_cxxld_so
= $(CXXLD
) $(LDSOFLAGS
) $(CXXLDFLAGS
) -o
$@
$^
$(1)
120 # CXXLD for dynamically loadable modules, optional parameter: libraries
121 quiet_cmd_cxxld_dl
= CXXLD
$@
122 cmd_cxxld_dl
= $(CXXLD
) $(LDDLFLAGS
) $(CXXLDFLAGS
) -o
$@
$^
$(1)
126 cmd_ar
= $(AR
) $(ARFLAGS
) $@
$^
130 cmd_as
= $(AS
) -c
$(ASFLAGS
) -o
$@
$<
132 cmd
= @
$(if
$($(quiet
)cmd_
$(1)),echo
' $(call $(quiet)cmd_$(1),$(2))' &&) $(call cmd_
$(1),$(2))
134 ifneq ($(dependencies
),)
135 -include $(dependencies
)
140 .PHONY
: clean distclean uninstall