Browse Source

use separate WRKDIR for host packages to avoid rebuild problems in wrong order, findstring idea from tg

Waldemar Brodkorb 10 years ago
parent
commit
bcd130f153
2 changed files with 8 additions and 8 deletions
  1. 1 6
      mk/host-bottom.mk
  2. 7 2
      mk/host.mk

+ 1 - 6
mk/host-bottom.mk

@@ -79,6 +79,7 @@ hpkg-install: ${ALL_HOSTINST}
 host-install:
 ${_HOST_FAKE_COOKIE}: ${_HOST_BUILD_COOKIE}
 	@$(CMD_TRACE) "host installing... "
+	@mkdir -p ${HOST_WRKINST}
 ifneq (${HOST_STYLE},manual)
 ifeq ($(strip ${HOST_STYLE}),)
 	cd ${WRKBUILD} && env ${HOST_MAKE_ENV} ${MAKE} -f ${MAKE_FILE} \
@@ -92,12 +93,6 @@ else
 	env ${HOST_MAKE_ENV} ${MAKE} hpkg-install $(MAKE_TRACE)
 endif
 	env ${HOST_MAKE_ENV} ${MAKE} hostpost-install $(MAKE_TRACE)
-	rm -rf ${WRKBUILD} ${WRKDIST} ${WRKSRC}
-	exec ${MAKE} host-extract $(MAKE_TRACE)
-	mkdir -p ${HOST_WRKINST}
-	# avoid rebuild
-	@touch ${_HOST_CONFIGURE_COOKIE} 
-	@touch ${_HOST_BUILD_COOKIE}
 	@touch $@
 
 ${_HOST_COOKIE}:

+ 7 - 2
mk/host.mk

@@ -1,6 +1,11 @@
 # This file is part of the OpenADK project. OpenADK is copyrighted
 # material, please see the LICENCE file in the top-level directory.
 
+# This is where all package operation is done in
+ifneq (,$(findstring hostpackage,$(MAKECMDGOALS)))
+WRKDIR?=		${WRKDIR_BASE}/w-${PKG_NAME}-${PKG_VERSION}-${PKG_RELEASE}-host
+endif
+
 HOST_CONFIGURE_ENV+=	AUTOM4TE=${STAGING_HOST_DIR}/usr/bin/autom4te \
 			CONFIG_SHELL='$(strip ${SHELL})' \
 			PKG_CONFIG_LIBDIR='${STAGING_HOST_DIR}/usr/lib/pkgconfig' \
@@ -30,7 +35,7 @@ HOST_MAKE_ENV+=		PATH='${HOST_PATH}' \
 HOST_MAKE_FLAGS+=	${HOST_XAKE_FLAGS} V=1
 HOST_FAKE_FLAGS+=	${HOST_XAKE_FLAGS}
 
-HOST_WRKINST=		${WRKDIR}/host
+HOST_WRKINST=		${WRKDIR}/fake
 
 _HOST_EXTRACT_COOKIE=	${WRKDIST}/.extract_done
 _HOST_PATCH_COOKIE=	${WRKDIST}/.prepared
@@ -54,7 +59,7 @@ hostfake: ${_HOST_FAKE_COOKIE}
 define HOST_template
 ALL_PKGOPTS+=	$(1)
 PKGNAME_$(1)=	$(2)
-HOSTDIR_$(1)=	$(WRKDIR)/host
+HOSTDIR_$(1)=	$(WRKDIR)/fake
 ALL_HOSTDIRS+=	$${HOSTDIR_$(1)}
 ALL_HOSTINST+=	$(2)-hostinstall