package-defaults.mk 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165
  1. #
  2. # Copyright (C) 2006 OpenWrt.org
  3. #
  4. # This is free software, licensed under the GNU General Public License v2.
  5. # See /LICENSE for more information.
  6. #
  7. PKG_DEFAULT_DEPENDS = +libc +USE_GLIBC:librt +USE_GLIBC:libpthread
  8. ifneq ($(PKG_NAME),toolchain)
  9. PKG_FIXUP_DEPENDS = $(if $(filter kmod-%,$(1)),$(2),$(PKG_DEFAULT_DEPENDS) $(filter-out $(PKG_DEFAULT_DEPENDS),$(2)))
  10. else
  11. PKG_FIXUP_DEPENDS = $(2)
  12. endif
  13. define Package/Default
  14. CONFIGFILE:=
  15. SECTION:=opt
  16. CATEGORY:=Extra packages
  17. DEPENDS:=
  18. MDEPENDS:=
  19. CONFLICTS:=
  20. PROVIDES:=
  21. EXTRA_DEPENDS:=
  22. MAINTAINER:=$(PKG_MAINTAINER)
  23. SOURCE:=$(patsubst $(TOPDIR)/%,%,$(CURDIR))
  24. ifneq ($(PKG_VERSION),)
  25. ifneq ($(PKG_RELEASE),)
  26. VERSION:=$(PKG_VERSION)-$(PKG_RELEASE)
  27. else
  28. VERSION:=$(PKG_VERSION)
  29. endif
  30. else
  31. VERSION:=$(PKG_RELEASE)
  32. endif
  33. ABI_VERSION:=
  34. ifneq ($(PKG_FLAGS),)
  35. PKGFLAGS:=$(PKG_FLAGS)
  36. else
  37. PKGFLAGS:=
  38. endif
  39. ifneq ($(ARCH_PACKAGES),)
  40. PKGARCH:=$(ARCH_PACKAGES)
  41. else
  42. PKGARCH:=$(BOARD)
  43. endif
  44. DEFAULT:=
  45. MENU:=
  46. SUBMENU:=
  47. SUBMENUDEP:=
  48. TITLE:=
  49. KCONFIG:=
  50. BUILDONLY:=
  51. HIDDEN:=
  52. URL:=
  53. VARIANT:=
  54. DEFAULT_VARIANT:=
  55. USERID:=
  56. ALTERNATIVES:=
  57. LICENSE:=$(PKG_LICENSE)
  58. LICENSE_FILES:=$(PKG_LICENSE_FILES)
  59. FILE_MODES:=$(PKG_FILE_MODES)
  60. endef
  61. Build/Patch:=$(Build/Patch/Default)
  62. ifneq ($(strip $(PKG_UNPACK)),)
  63. define Build/Prepare/Default
  64. $(PKG_UNPACK)
  65. [ ! -d ./src/ ] || $(CP) ./src/. $(PKG_BUILD_DIR)
  66. $(Build/Patch)
  67. endef
  68. endif
  69. EXTRA_CXXFLAGS = $(EXTRA_CFLAGS)
  70. ifeq ($(CONFIG_BUILD_NLS),y)
  71. DISABLE_NLS:=
  72. else
  73. DISABLE_NLS:=--disable-nls
  74. endif
  75. CONFIGURE_PREFIX:=/usr
  76. CONFIGURE_ARGS = \
  77. --target=$(GNU_TARGET_NAME) \
  78. --host=$(GNU_TARGET_NAME) \
  79. --build=$(GNU_HOST_NAME) \
  80. --program-prefix="" \
  81. --program-suffix="" \
  82. --prefix=$(CONFIGURE_PREFIX) \
  83. --exec-prefix=$(CONFIGURE_PREFIX) \
  84. --bindir=$(CONFIGURE_PREFIX)/bin \
  85. --sbindir=$(CONFIGURE_PREFIX)/sbin \
  86. --libexecdir=$(CONFIGURE_PREFIX)/lib \
  87. --sysconfdir=/etc \
  88. --datadir=$(CONFIGURE_PREFIX)/share \
  89. --localstatedir=/var \
  90. --mandir=$(CONFIGURE_PREFIX)/man \
  91. --infodir=$(CONFIGURE_PREFIX)/info \
  92. $(DISABLE_NLS) \
  93. $(DISABLE_IPV6)
  94. CONFIGURE_VARS = \
  95. $(TARGET_CONFIGURE_OPTS) \
  96. CFLAGS="$(TARGET_CFLAGS) $(EXTRA_CFLAGS)" \
  97. CXXFLAGS="$(TARGET_CXXFLAGS) $(EXTRA_CXXFLAGS)" \
  98. CPPFLAGS="$(TARGET_CPPFLAGS) $(EXTRA_CPPFLAGS)" \
  99. LDFLAGS="$(TARGET_LDFLAGS) $(EXTRA_LDFLAGS)" \
  100. CONFIGURE_PATH = .
  101. CONFIGURE_CMD = ./configure
  102. replace_script=$(FIND) $(1) -name $(2) | $(XARGS) chmod u+w; \
  103. $(FIND) $(1) -name $(2) | $(XARGS) -n1 cp --remove-destination \
  104. $(SCRIPT_DIR)/$(2);
  105. define Build/Configure/Default
  106. (cd $(PKG_BUILD_DIR)/$(CONFIGURE_PATH)/$(strip $(3)); \
  107. if [ -x $(CONFIGURE_CMD) ]; then \
  108. $(call replace_script,$(PKG_BUILD_DIR)/$(3),config.guess) \
  109. $(call replace_script,$(PKG_BUILD_DIR)/$(3),config.sub) \
  110. $(CONFIGURE_VARS) \
  111. $(2) \
  112. $(CONFIGURE_CMD) \
  113. $(CONFIGURE_ARGS) \
  114. $(1); \
  115. fi; \
  116. )
  117. endef
  118. MAKE_VARS = \
  119. CFLAGS="$(TARGET_CFLAGS) $(EXTRA_CFLAGS) $(TARGET_CPPFLAGS) $(EXTRA_CPPFLAGS)" \
  120. CXXFLAGS="$(TARGET_CXXFLAGS) $(EXTRA_CXXFLAGS) $(TARGET_CPPFLAGS) $(EXTRA_CPPFLAGS)" \
  121. LDFLAGS="$(TARGET_LDFLAGS) $(EXTRA_LDFLAGS)"
  122. MAKE_FLAGS = \
  123. $(TARGET_CONFIGURE_OPTS) \
  124. CROSS="$(TARGET_CROSS)" \
  125. ARCH="$(ARCH)"
  126. MAKE_INSTALL_FLAGS = \
  127. $(MAKE_FLAGS) \
  128. DESTDIR="$(PKG_INSTALL_DIR)"
  129. MAKE_PATH ?= .
  130. define Build/Compile/Default
  131. +$(MAKE_VARS) \
  132. $(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR)/$(MAKE_PATH) \
  133. $(MAKE_FLAGS) \
  134. $(1);
  135. endef
  136. define Build/Install/Default
  137. $(MAKE_VARS) \
  138. $(MAKE) -C $(PKG_BUILD_DIR)/$(MAKE_PATH) \
  139. $(MAKE_INSTALL_FLAGS) \
  140. $(if $(1), $(1), install);
  141. endef
  142. define Build/Dist/Default
  143. $(call Build/Compile/Default, DESTDIR="$(PKG_BUILD_DIR)/tmp" CC="$(TARGET_CC)" dist)
  144. endef
  145. define Build/DistCheck/Default
  146. $(call Build/Compile/Default, DESTDIR="$(PKG_BUILD_DIR)/tmp" CC="$(TARGET_CC)" distcheck)
  147. endef