Pārlūkot izejas kodu

clean up automake/pkg-config handling, move separate host/package variable exports to templates, fix automake path for host builds

SVN-Revision: 15339
Felix Fietkau 16 gadi atpakaļ
vecāks
revīzija
63129f9b4c

+ 10 - 2
include/host-build.mk

@@ -103,6 +103,14 @@ define Download/default
   MD5SUM:=$(PKG_MD5SUM)
 endef
 
+define Host/Exports/Default
+  $(1) : export ACLOCAL_INCLUDE=$$(foreach p,$$(wildcard $$(STAGING_DIR_HOST)/share/aclocal $$(STAGING_DIR_HOST)/share/aclocal-*),-I $$(p))
+  $(1) : export STAGING_PREFIX=$$(STAGING_DIR_HOST)
+  $(1) : export PKG_CONFIG_PATH=$$(STAGING_DIR_HOST)/lib/pkgconfig
+  $(1) : export PKG_CONFIG_LIBDIR=$$(STAGING_DIR_HOST)/lib/pkgconfig
+endef
+Host/Exports=$(Host/Exports/Default)
+
 ifndef DUMP
   define HostBuild
   $(if $(HOST_QUILT),$(Host/Quilt))
@@ -115,12 +123,12 @@ ifndef DUMP
 	$(call Host/Prepare)
 	touch $$@
 
-  $(HOST_STAMP_CONFIGURED) : export PKG_CONFIG_PATH=$$(STAGING_DIR_HOST)/lib/pkgconfig
-  $(HOST_STAMP_CONFIGURED) : export PKG_CONFIG_LIBDIR=$$(STAGING_DIR_HOST)/lib/pkgconfig
+  $(call Host/Exports,$(STAMP_CONFIGURED))
   $(HOST_STAMP_CONFIGURED): $(HOST_STAMP_PREPARED)
 	$(call Host/Configure)
 	touch $$@
 
+  $(call Host/Exports,$(STAMP_BUILT))
   $(HOST_STAMP_BUILT): $(HOST_STAMP_CONFIGURED)
 	$(call Host/Compile)
 	touch $$@

+ 12 - 8
include/package.mk

@@ -62,6 +62,16 @@ define sep
 
 endef
 
+define Build/Exports/Default
+  $(1) : export ACLOCAL_INCLUDE=$$(foreach p,$$(wildcard $$(STAGING_DIR)/usr/share/aclocal $$(STAGING_DIR)/usr/share/aclocal-* $$(STAGING_DIR)/host/share/aclocal $$(STAGING_DIR)/host/share/aclocal-*),-I $$(p))
+  $(1) : export STAGING_PREFIX=$$(STAGING_DIR)/usr
+  $(1) : export PATH=$$(TARGET_PATH_PKG)
+  $(1) : export CONFIG_SITE:=$$(CONFIG_SITE)
+  $(1) : export PKG_CONFIG_PATH=$$(STAGING_DIR)/usr/lib/pkgconfig
+  $(1) : export PKG_CONFIG_LIBDIR=$$(STAGING_DIR)/usr/lib/pkgconfig
+endef
+Build/Exports=$(Build/Exports/Default)
+
 define Build/DefaultTargets
   $(if $(QUILT),$(Build/Quilt))
   $(if $(strip $(PKG_SOURCE_URL)),$(call Download,default))
@@ -76,20 +86,14 @@ define Build/DefaultTargets
 	$(foreach hook,$(Hooks/Prepare/Post),$(call $(hook))$(sep))
 	touch $$@
 
-  $(STAMP_CONFIGURED) : export PATH=$$(TARGET_PATH_PKG)
-  $(STAMP_CONFIGURED) : export CONFIG_SITE:=$$(CONFIG_SITE)
-  $(STAMP_CONFIGURED) : export PKG_CONFIG_PATH=$$(STAGING_DIR)/usr/lib/pkgconfig
-  $(STAMP_CONFIGURED) : export PKG_CONFIG_LIBDIR=$$(STAGING_DIR)/usr/lib/pkgconfig
+  $(call Build/Exports,$(STAMP_CONFIGURED))
   $(STAMP_CONFIGURED): $(STAMP_PREPARED)
 	$(foreach hook,$(Hooks/Configure/Pre),$(call $(hook))$(sep))
 	$(Build/Configure)
 	$(foreach hook,$(Hooks/Configure/Post),$(call $(hook))$(sep))
 	touch $$@
 
-  $(STAMP_BUILT) : export PATH=$$(TARGET_PATH_PKG)
-  $(STAMP_BUILT) : export CONFIG_SITE:=$$(CONFIG_SITE)
-  $(STAMP_BUILT) : export PKG_CONFIG_PATH=$$(STAGING_DIR)/usr/lib/pkgconfig:$$(STAGING_DIR_HOST)/usr/lib/pkgconfig
-  $(STAMP_BUILT) : export PKG_CONFIG_LIBDIR=$$(STAGING_DIR)/usr/lib/pkgconfig
+  $(call Build/Exports,$(STAMP_BUILT))
   $(STAMP_BUILT): $(STAMP_CONFIGURED)
 	$(foreach hook,$(Hooks/Compile/Pre),$(call $(hook))$(sep))
 	$(Build/Compile)

+ 1 - 9
tools/automake/files/aclocal

@@ -1,10 +1,2 @@
 #!/usr/bin/env sh
-if [ -d ${STAGING_DIR}/host/share/aclocal ]; then
-    aclocal_include_dirs="-I ${STAGING_DIR}/host/share/aclocal"
-else
-    aclocal_include_dirs=
-fi
-if [ -d ${STAGING_DIR}/usr/share/aclocal ]; then
-    aclocal_include_dirs="$aclocal_include_dirs -I ${STAGING_DIR}/usr/share/aclocal"
-fi
-aclocal.real $aclocal_include_dirs $@
+aclocal.real $ACLOCAL_INCLUDE $@

+ 1 - 1
tools/pkg-config/files/pkg-config

@@ -1,3 +1,3 @@
 #!/bin/sh
 
-pkg-config.real $@ --define-variable=prefix=${STAGING_DIR}/usr/ --define-variable=exec_prefix=${STAGING_DIR}/usr/
+pkg-config.real $@ --define-variable=prefix=${STAGING_PREFIX}/ --define-variable=exec_prefix=${STAGING_PREFIX}/