1 # SPDX-License-Identifier: GPL-2.0-only
3 # Copyright (C) 2006-2020 OpenWrt.org
5 PKG_DEFAULT_DEPENDS
= +libc
7 ifneq ($(PKG_NAME
),toolchain
)
8 PKG_FIXUP_DEPENDS
= $(if
$(filter kmod-
%,$(1)),$(2),$(PKG_DEFAULT_DEPENDS
) $(filter-out $(PKG_DEFAULT_DEPENDS
),$(2)))
10 PKG_FIXUP_DEPENDS
= $(2)
13 define Package
/Default
16 CATEGORY
:=Extra packages
22 MAINTAINER
:=$(PKG_MAINTAINER
)
23 SOURCE
:=$(patsubst $(TOPDIR
)/%,%,$(CURDIR
))
24 ifneq ($(PKG_VERSION
),)
25 ifneq ($(PKG_RELEASE
),)
26 VERSION
:=$(PKG_VERSION
)-$(PKG_RELEASE
)
28 VERSION
:=$(PKG_VERSION
)
31 VERSION
:=$(PKG_RELEASE
)
35 PKGFLAGS
:=$(PKG_FLAGS
)
39 ifneq ($(ARCH_PACKAGES
),)
40 PKGARCH
:=$(ARCH_PACKAGES
)
57 LICENSE
:=$(PKG_LICENSE
)
58 LICENSE_FILES
:=$(PKG_LICENSE_FILES
)
59 FILE_MODES
:=$(PKG_FILE_MODES
)
62 Build
/Patch
:=$(Build
/Patch
/Default
)
63 ifneq ($(strip $(PKG_UNPACK
)),)
64 define Build
/Prepare
/Default
66 [ ! -d .
/src
/ ] ||
$(CP
) .
/src
/.
$(PKG_BUILD_DIR
)
71 EXTRA_CXXFLAGS
= $(EXTRA_CFLAGS
)
72 ifeq ($(CONFIG_BUILD_NLS
),y
)
75 DISABLE_NLS
:=--disable-nls
78 CONFIGURE_PREFIX
:=/usr
80 --target
=$(GNU_TARGET_NAME
) \
81 --host
=$(GNU_TARGET_NAME
) \
82 --build
=$(GNU_HOST_NAME
) \
83 --disable-dependency-tracking \
86 --prefix=$(CONFIGURE_PREFIX
) \
87 --exec-prefix
=$(CONFIGURE_PREFIX
) \
88 --bindir=$(CONFIGURE_PREFIX
)/bin \
89 --sbindir
=$(CONFIGURE_PREFIX
)/sbin \
90 --libexecdir
=$(CONFIGURE_PREFIX
)/lib \
92 --datadir=$(CONFIGURE_PREFIX
)/share \
93 --localstatedir
=/var \
94 --mandir=$(CONFIGURE_PREFIX
)/man \
95 --infodir=$(CONFIGURE_PREFIX
)/info \
100 $(TARGET_CONFIGURE_OPTS
) \
101 CFLAGS
="$(TARGET_CFLAGS) $(EXTRA_CFLAGS)" \
102 CXXFLAGS
="$(TARGET_CXXFLAGS) $(EXTRA_CXXFLAGS)" \
103 CPPFLAGS
="$(TARGET_CPPFLAGS) $(EXTRA_CPPFLAGS)" \
104 LDFLAGS
="$(TARGET_LDFLAGS) $(EXTRA_LDFLAGS)" \
107 CONFIGURE_CMD
= .
/configure
109 replace_script
=$(FIND
) $(1) -name
$(2) |
$(XARGS
) chmod u
+w
; \
110 $(FIND
) $(1) -name
$(2) |
$(XARGS
) -n1 cp
--remove-destination \
113 define Build
/Configure
/Default
114 (cd
$(PKG_BUILD_DIR
)/$(CONFIGURE_PATH
)/$(strip $(3)); \
115 if
[ -x
$(CONFIGURE_CMD
) ]; then \
116 $(call replace_script
,$(PKG_BUILD_DIR
)/$(3),config.guess
) \
117 $(call replace_script
,$(PKG_BUILD_DIR
)/$(3),config.sub
) \
128 CFLAGS
="$(TARGET_CFLAGS) $(EXTRA_CFLAGS) $(TARGET_CPPFLAGS) $(EXTRA_CPPFLAGS)" \
129 CXXFLAGS
="$(TARGET_CXXFLAGS) $(EXTRA_CXXFLAGS) $(TARGET_CPPFLAGS) $(EXTRA_CPPFLAGS)" \
130 LDFLAGS
="$(TARGET_LDFLAGS) $(EXTRA_LDFLAGS)"
133 $(TARGET_CONFIGURE_OPTS
) \
134 CROSS
="$(TARGET_CROSS)" \
137 MAKE_INSTALL_FLAGS
= \
139 DESTDIR
="$(PKG_INSTALL_DIR)"
143 define Build
/Compile
/Default
145 $(MAKE
) $(PKG_JOBS
) -C
$(PKG_BUILD_DIR
)/$(MAKE_PATH
) \
150 define Build
/Install
/Default
152 $(MAKE
) -C
$(PKG_BUILD_DIR
)/$(MAKE_PATH
) \
153 $(MAKE_INSTALL_FLAGS
) \
154 $(if
$(1), $(1), install);
157 define Build
/Dist
/Default
158 $(call Build
/Compile
/Default
, DESTDIR
="$(PKG_BUILD_DIR)/tmp" CC
="$(TARGET_CC)" dist)
161 define Build
/DistCheck
/Default
162 $(call Build
/Compile
/Default
, DESTDIR
="$(PKG_BUILD_DIR)/tmp" CC
="$(TARGET_CC)" distcheck
)