diff options
-rw-r--r-- | Makefile | 20 | ||||
-rwxr-xr-x | scripts/copy.sh | 20 |
2 files changed, 29 insertions, 11 deletions
@@ -242,10 +242,12 @@ endif include package/*/*.mk +TARGETS+=target-devfiles + # target stuff is last so it can override anything else include target/Makefile.in -TARGETS+=erase-fakeroots target-devfiles +TARGETS+=erase-fakeroots TARGETS_CLEAN:=$(patsubst %,%-clean,$(TARGETS)) TARGETS_SOURCE:=$(patsubst %,%-source,$(TARGETS) $(BASE_TARGETS)) @@ -318,18 +320,14 @@ erase-fakeroots: rm -f $(PROJECT_BUILD_DIR)/.fakeroot* target-devfiles: -ifeq ($(strip $(BR2_HAVE_DEVFILES)),y) - cp -a $(STAGING_DIR)/usr/include $(TARGET_DIR)/usr - cp $(STAGING_DIR)/usr/lib/*.a $(TARGET_DIR)/usr/lib - cp $(STAGING_DIR)/lib/*.a $(TARGET_DIR)/lib - cp $(STAGING_DIR)/usr/lib/*.la $(TARGET_DIR)/usr/lib - cp $(STAGING_DIR)/lib/*.la $(TARGET_DIR)/lib +ifeq ($(BR2_HAVE_DEVFILES),y) + ( scripts/copy.sh $(STAGING_DIR) $(TARGET_DIR) ) else rm -rf $(TARGET_DIR)/usr/include - find $(TARGET_DIR)/usr/lib -name '*.a' -delete - find $(TARGET_DIR)/lib -name '*.a' -delete - find $(TARGET_DIR)/usr/lib -name '*.la' -delete - find $(TARGET_DIR)/lib -name '*.la' -delete + find $(TARGET_DIR)/usr/lib -name '*.a' -delete + find $(TARGET_DIR)/lib -name '*.a' -delete + find $(TARGET_DIR)/usr/lib -name '*.la' -delete + find $(TARGET_DIR)/lib -name '*.la' -delete endif source: $(TARGETS_SOURCE) $(HOST_SOURCE) diff --git a/scripts/copy.sh b/scripts/copy.sh new file mode 100755 index 000000000..613c4dd0a --- /dev/null +++ b/scripts/copy.sh @@ -0,0 +1,20 @@ +#!/bin/sh + +STAGING_DIR=$1 +TARGET_DIR=$2 + +echo "Copying development files to target..." + +cp -a ${STAGING_DIR}/usr/include ${TARGET_DIR}/usr + +for LIBSDIR in /lib /usr/lib; do + for WILDCARD in *.a *.la; do + for FILE_PATH in `find ${STAGING_DIR}${LIBSDIR} -name ${WILDCARD}`; do + STAGING_STRIPPED=${FILE_PATH##${STAGING_DIR}} + EXTENDED_DIR=${PATH_FILE%/${WILDCARD}} + mkdir -p ${TARGET_DIR}${EXTENDED_DIR} + cp ${FILE_PATH} ${TARGET_DIR}${STAGING_STRIPPED} + #echo ${TARGET_DIR}${STAGING_STRIPPED} + done + done +done |