PROVIDES:=
EXTRA_DEPENDS:=
MAINTAINER:=OpenWrt Developers Team <openwrt-devel@openwrt.org>
- SOURCE:=$(patsubst $(TOPDIR)/%,%,${shell pwd})
+ SOURCE:=$(patsubst $(TOPDIR)/%,%,$(CURDIR))
ifneq ($(PKG_VERSION),)
ifneq ($(PKG_RELEASE),)
VERSION:=$(PKG_VERSION)-$(PKG_RELEASE)
else
VERSION:=$(PKG_RELEASE)
endif
- PKGARCH:=$(ARCH)
+ ifneq ($(ARCH_PACKAGES),)
+ PKGARCH:=$(ARCH_PACKAGES)
+ else
+ PKGARCH:=$(BOARD)
+ endif
PRIORITY:=optional
DEFAULT:=
MENU:=
SUBMENU:=
SUBMENUDEP:=
TITLE:=
- DESCRIPTION:=
+ KCONFIG:=
+ BUILDONLY:=
+ URL:=
+ VARIANT:=
endef
+Build/Patch:=$(Build/Patch/Default)
ifneq ($(strip $(PKG_UNPACK)),)
define Build/Prepare/Default
- $(PKG_UNPACK)
- @if [ -d ./patches -a "$$$$(ls ./patches | wc -l)" -gt 0 ]; then \
- $(PATCH) $(PKG_BUILD_DIR) ./patches; \
- fi
+ $(SH_FUNC) $(PKG_UNPACK)
+ $(Build/Patch)
endef
endif
-TARGET_CPPFLAGS=-I$(STAGING_DIR)/usr/include -I$(STAGING_DIR)/include
-TARGET_LDFLAGS=-L$(STAGING_DIR)/usr/lib -L$(STAGING_DIR)/lib
-
-CONFIGURE_ARGS := \
+CONFIGURE_PREFIX:=/usr
+CONFIGURE_ARGS = \
--target=$(GNU_TARGET_NAME) \
--host=$(GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME) \
--program-prefix="" \
--program-suffix="" \
- --prefix=/usr \
- --exec-prefix=/usr \
- --bindir=/usr/bin \
- --sbindir=/usr/sbin \
- --libexecdir=/usr/lib \
+ --prefix=$(CONFIGURE_PREFIX) \
+ --exec-prefix=$(CONFIGURE_PREFIX) \
+ --bindir=$(CONFIGURE_PREFIX)/bin \
+ --sbindir=$(CONFIGURE_PREFIX)/sbin \
+ --libexecdir=$(CONFIGURE_PREFIX)/lib \
--sysconfdir=/etc \
- --datadir=/usr/share \
+ --datadir=$(CONFIGURE_PREFIX)/share \
--localstatedir=/var \
- --mandir=/usr/man \
- --infodir=/usr/info \
- $(DISABLE_NLS)
+ --mandir=$(CONFIGURE_PREFIX)/man \
+ --infodir=$(CONFIGURE_PREFIX)/info \
+ $(DISABLE_NLS) \
+ $(DISABLE_LARGEFILE) \
+ $(DISABLE_IPV6)
-CONFIGURE_VARS:= \
+CONFIGURE_VARS = \
$(TARGET_CONFIGURE_OPTS) \
CFLAGS="$(TARGET_CFLAGS) $(EXTRA_CFLAGS)" \
CXXFLAGS="$(TARGET_CFLAGS) $(EXTRA_CFLAGS)" \
CPPFLAGS="$(TARGET_CPPFLAGS) $(EXTRA_CPPFLAGS)" \
- LDFLAGS="$(TARGET_LDFLAGS)" \
- PKG_CONFIG_PATH="$(STAGING_DIR)/usr/lib/pkgconfig" \
- PKG_CONFIG_LIBDIR="$(STAGING_DIR)/usr/lib/pkgconfig"
+ LDFLAGS="$(TARGET_LDFLAGS) $(EXTRA_LDFLAGS)" \
-CONFIGURE_PATH:=.
+CONFIGURE_PATH = .
+CONFIGURE_CMD = ./configure
+
+replace_script=$(FIND) $(1) -name $(2) | $(XARGS) chmod u+w; $(FIND) $(1) -name $(2) | $(XARGS) -n1 cp $(SCRIPT_DIR)/$(2);
define Build/Configure/Default
- (cd $(PKG_BUILD_DIR)/$(strip $(3)); \
- if [ -x configure ]; then \
+ (cd $(PKG_BUILD_DIR)/$(CONFIGURE_PATH)/$(strip $(3)); \
+ if [ -x $(CONFIGURE_CMD) ]; then \
+ $(call replace_script,$(PKG_BUILD_DIR)/$(3),config.guess) \
+ $(call replace_script,$(PKG_BUILD_DIR)/$(3),config.sub) \
$(CONFIGURE_VARS) \
$(2) \
- $(CONFIGURE_PATH)/configure \
+ $(CONFIGURE_CMD) \
$(CONFIGURE_ARGS) \
$(1); \
fi; \
)
endef
-MAKE_VARS := \
- CFLAGS="$(TARGET_CFLAGS) $(EXTRA_CFLAGS)" \
- CXXFLAGS="$(TARGET_CFLAGS) $(EXTRA_CFLAGS)" \
- LDFLAGS="$(EXTRA_LDFLAGS) "
+MAKE_VARS = \
+ CFLAGS="$(TARGET_CFLAGS) $(EXTRA_CFLAGS) $(TARGET_CPPFLAGS) $(EXTRA_CPPFLAGS)" \
+ CXXFLAGS="$(TARGET_CFLAGS) $(EXTRA_CFLAGS) $(TARGET_CPPFLAGS) $(EXTRA_CPPFLAGS)" \
+ LDFLAGS="$(TARGET_LDFLAGS) $(EXTRA_LDFLAGS)"
-MAKE_FLAGS := \
+MAKE_FLAGS = \
$(TARGET_CONFIGURE_OPTS) \
CROSS="$(TARGET_CROSS)" \
ARCH="$(ARCH)"
+MAKE_INSTALL_FLAGS = \
+ $(MAKE_FLAGS) \
+ DESTDIR="$(PKG_INSTALL_DIR)"
+
+MAKE_PATH = .
+
define Build/Compile/Default
$(MAKE_VARS) \
- $(MAKE) -C $(PKG_BUILD_DIR) \
+ $(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR)/$(MAKE_PATH) \
$(MAKE_FLAGS) \
$(1);
endef
+define Build/Install/Default
+ $(MAKE_VARS) \
+ $(MAKE) -C $(PKG_BUILD_DIR)/$(MAKE_PATH) \
+ $(MAKE_INSTALL_FLAGS) \
+ $(if $(1), $(1), install);
+endef
+define Build/Dist/Default
+ $(call Build/Compile/Default, DESTDIR="$(PKG_BUILD_DIR)/tmp" CC="$(TARGET_CC)" dist)
+endef
+
+define Build/DistCheck/Default
+ $(call Build/Compile/Default, DESTDIR="$(PKG_BUILD_DIR)/tmp" CC="$(TARGET_CC)" distcheck)
+endef