package-defaults.mk 3.8 KB

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