2 # Copyright (C) 2006 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
8 ifneq ($(PKG_NAME),toolchain)
9 PKG_FIXUP_DEPENDS = $(if $(filter kmod-%,$(1)),$(2),+libc $(filter-out +libc,$(2)))
11 PKG_FIXUP_DEPENDS = $(2)
14 define Package/Default
17 CATEGORY:=Extra packages
22 MAINTAINER:=OpenWrt Developers Team <openwrt-devel@openwrt.org>
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)
34 PKGFLAGS:=$(PKG_FLAGS)
38 ifneq ($(ARCH_PACKAGES),)
39 PKGARCH:=$(ARCH_PACKAGES)
56 Build/Patch:=$(Build/Patch/Default)
57 ifneq ($(strip $(PKG_UNPACK)),)
58 define Build/Prepare/Default
64 EXTRA_CXXFLAGS = $(EXTRA_CFLAGS)
66 CONFIGURE_PREFIX:=/usr
68 --target=$(GNU_TARGET_NAME) \
69 --host=$(GNU_TARGET_NAME) \
70 --build=$(GNU_HOST_NAME) \
73 --prefix=$(CONFIGURE_PREFIX) \
74 --exec-prefix=$(CONFIGURE_PREFIX) \
75 --bindir=$(CONFIGURE_PREFIX)/bin \
76 --sbindir=$(CONFIGURE_PREFIX)/sbin \
77 --libexecdir=$(CONFIGURE_PREFIX)/lib \
79 --datadir=$(CONFIGURE_PREFIX)/share \
80 --localstatedir=/var \
81 --mandir=$(CONFIGURE_PREFIX)/man \
82 --infodir=$(CONFIGURE_PREFIX)/info \
84 $(DISABLE_LARGEFILE) \
88 $(TARGET_CONFIGURE_OPTS) \
89 CFLAGS="$(TARGET_CFLAGS) $(EXTRA_CFLAGS)" \
90 CXXFLAGS="$(TARGET_CXXFLAGS) $(EXTRA_CFLAGS)" \
91 CPPFLAGS="$(TARGET_CPPFLAGS) $(EXTRA_CPPFLAGS)" \
92 LDFLAGS="$(TARGET_LDFLAGS) $(EXTRA_LDFLAGS)" \
95 CONFIGURE_CMD = ./configure
97 replace_script=$(FIND) $(1) -name $(2) | $(XARGS) chmod u+w; $(FIND) $(1) -name $(2) | $(XARGS) -n1 cp $(SCRIPT_DIR)/$(2);
99 define Build/Configure/Default
100 (cd $(PKG_BUILD_DIR)/$(CONFIGURE_PATH)/$(strip $(3)); \
101 if [ -x $(CONFIGURE_CMD) ]; then \
102 $(call replace_script,$(PKG_BUILD_DIR)/$(3),config.guess) \
103 $(call replace_script,$(PKG_BUILD_DIR)/$(3),config.sub) \
114 CFLAGS="$(TARGET_CFLAGS) $(EXTRA_CFLAGS) $(TARGET_CPPFLAGS) $(EXTRA_CPPFLAGS)" \
115 CXXFLAGS="$(TARGET_CXXFLAGS) $(EXTRA_CXXFLAGS) $(TARGET_CPPFLAGS) $(EXTRA_CPPFLAGS)" \
116 LDFLAGS="$(TARGET_LDFLAGS) $(EXTRA_LDFLAGS)"
119 $(TARGET_CONFIGURE_OPTS) \
120 CROSS="$(TARGET_CROSS)" \
123 MAKE_INSTALL_FLAGS = \
125 DESTDIR="$(PKG_INSTALL_DIR)"
129 define Build/Compile/Default
131 $(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR)/$(MAKE_PATH) \
136 define Build/Install/Default
138 $(MAKE) -C $(PKG_BUILD_DIR)/$(MAKE_PATH) \
139 $(MAKE_INSTALL_FLAGS) \
140 $(if $(1), $(1), install);
143 define Build/Dist/Default
144 $(call Build/Compile/Default, DESTDIR="$(PKG_BUILD_DIR)/tmp" CC="$(TARGET_CC)" dist)
147 define Build/DistCheck/Default
148 $(call Build/Compile/Default, DESTDIR="$(PKG_BUILD_DIR)/tmp" CC="$(TARGET_CC)" distcheck)