Use atree for the Windows SDK. Strip binaries.
This moves the copy/strip/rm logic for the Windows SDK from the patch_windows_sdk.sh to a regular sdk-windows-x86.atree. The bash script is still here to invoke atree and do whatever cleanup we might want to do later. This should make it easier to maintain the Windows SDK by providing a structure similar to tools.atree. This change requires build.git Change-Id: I22aae7a8 to have rm/strip support in atree. Change-Id: If937eef4a819e7da21aa993459111fc5d99474a8
This commit is contained in:
60
build/sdk-windows-x86.atree
Normal file
60
build/sdk-windows-x86.atree
Normal file
@@ -0,0 +1,60 @@
|
|||||||
|
#
|
||||||
|
# Copyright (C) 2011 The Android Open Source Project
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
#
|
||||||
|
# These are the files that comprise the *Windows* SDK.
|
||||||
|
#
|
||||||
|
# The Windows SDK is based on the Linux one so in this file we
|
||||||
|
# need to remove Linux binaries and replace them by their
|
||||||
|
# Windows counterparts.
|
||||||
|
#
|
||||||
|
# This file only includes platform-dependent files.
|
||||||
|
# Tools-dependent files (and not tied to a specific platform)
|
||||||
|
# are controled by sdk/build/tools.windows.atree.
|
||||||
|
#
|
||||||
|
|
||||||
|
rm platform-tools/adb
|
||||||
|
bin/adb.exe strip platform-tools/adb.exe
|
||||||
|
bin/AdbWinUsbApi.dll platform-tools/AdbWinUsbApi.dll
|
||||||
|
bin/AdbWinApi.dll platform-tools/AdbWinApi.dll
|
||||||
|
|
||||||
|
rm platform-tools/aapt
|
||||||
|
bin/aapt.exe strip platform-tools/aapt.exe
|
||||||
|
|
||||||
|
rm platform-tools/aidl
|
||||||
|
bin/aidl.exe strip platform-tools/aidl.exe
|
||||||
|
|
||||||
|
rm platform-tools/dx
|
||||||
|
dalvik/dx/etc/dx.bat platform-tools/dx
|
||||||
|
|
||||||
|
rm platform-tools/dexdump
|
||||||
|
bin/dexdump.exe strip platform-tools/dexdump.exe
|
||||||
|
|
||||||
|
rm platform-tools/llvm-rs-cc
|
||||||
|
bin/llvm-rs-cc.exe strip platform-tools/llvm-rs-cc.exe
|
||||||
|
|
||||||
|
prebuilt/windows/swt/swt.jar tools/lib/x86/swt.jar
|
||||||
|
prebuilt/windows-x86_64/swt/swt.jar tools/lib/x86_64/swt.jar
|
||||||
|
|
||||||
|
external/sonivox/jet_tools/JetCreator tools/Jet/JetCreator
|
||||||
|
external/sonivox/jet_tools/JetCreator_content tools/Jet/demo_content
|
||||||
|
external/sonivox/jet_tools/logic_templates tools/Jet/logic_templates
|
||||||
|
prebuilt/windows/jetcreator/EASDLL.dll tools/Jet/JetCreator/EASDLL.dll
|
||||||
|
external/sonivox/docs/JET_Authoring_Guidelines.html docs/JetCreator/JET_Authoring_Guidelines.html
|
||||||
|
external/sonivox/docs/JET_Authoring_Guidelines_files docs/JetCreator/JET_Authoring_Guidelines_files
|
||||||
|
external/sonivox/docs/JET_Creator_User_Manual.html docs/JetCreator/JET_Creator_User_Manual.html
|
||||||
|
external/sonivox/docs/JET_Creator_User_Manual_files docs/JetCreator/JET_Creator_User_Manual_files
|
||||||
|
|
||||||
@@ -38,10 +38,10 @@ frameworks/base/docs/docs-redirect.html documentation.html
|
|||||||
##############################################################################
|
##############################################################################
|
||||||
|
|
||||||
# host tools from out/host/$(HOST_OS)-$(HOST_ARCH)/
|
# host tools from out/host/$(HOST_OS)-$(HOST_ARCH)/
|
||||||
bin/adb platform-tools/adb
|
bin/adb strip platform-tools/adb
|
||||||
bin/aapt platform-tools/aapt
|
bin/aapt strip platform-tools/aapt
|
||||||
bin/aidl platform-tools/aidl
|
bin/aidl strip platform-tools/aidl
|
||||||
bin/llvm-rs-cc platform-tools/llvm-rs-cc
|
bin/llvm-rs-cc strip platform-tools/llvm-rs-cc
|
||||||
|
|
||||||
# dx
|
# dx
|
||||||
bin/dx platform-tools/dx
|
bin/dx platform-tools/dx
|
||||||
|
|||||||
@@ -1,4 +1,19 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
#
|
||||||
|
# Copyright (C) 2009 The Android Open Source Project
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
#
|
||||||
|
|
||||||
# This script takes a Linux SDK, cleans it and injects the necessary Windows
|
# This script takes a Linux SDK, cleans it and injects the necessary Windows
|
||||||
# binaries needed by the SDK. The script has 2 parts:
|
# binaries needed by the SDK. The script has 2 parts:
|
||||||
@@ -53,55 +68,12 @@ if [[ -n "$USB_DRIVER_HOOK" ]]; then
|
|||||||
$USB_DRIVER_HOOK $V $TEMP_SDK_DIR $TOPDIR
|
$USB_DRIVER_HOOK $V $TEMP_SDK_DIR $TOPDIR
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Remove obsolete stuff from tools & platform
|
|
||||||
TOOLS=$TEMP_SDK_DIR/tools
|
|
||||||
PLATFORM_TOOLS=$TEMP_SDK_DIR/platform-tools
|
|
||||||
LIB=$TEMP_SDK_DIR/tools/lib
|
|
||||||
rm $V $TOOLS/{dmtracedump,etc1tool,hprof-conv,sqlite3,zipalign}
|
|
||||||
rm $V $LIB/*/swt.jar
|
|
||||||
rm $V $PLATFORM_TOOLS/{adb,aapt,aidl,dx,dexdump,llvm-rs-cc}
|
|
||||||
|
|
||||||
# Copy all the new stuff in tools
|
# Invoke atree to copy the files
|
||||||
# Note: some tools are first copied here and then moved in platform-tools
|
atree -f ${TOPDIR}development/build/sdk-windows-x86.atree \
|
||||||
cp $V $WIN_OUT_DIR/host/windows-x86/bin/*.{exe,dll} $TOOLS/
|
-I $WIN_OUT_DIR/host/windows-x86 \
|
||||||
# Remove some tools we don't want to take in the SDK
|
-I ${TOPDIR:-.} \
|
||||||
rm $V -f $TOOLS/{fastboot.exe,rs-spec-gen.exe,tblgen.exe}
|
-o $TEMP_SDK_DIR
|
||||||
mkdir -pv $LIB/x86
|
|
||||||
cp $V ${TOPDIR}prebuilt/windows/swt/swt.jar $LIB/x86/
|
|
||||||
mkdir -pv $LIB/x86_64
|
|
||||||
cp $V ${TOPDIR}prebuilt/windows-x86_64/swt/swt.jar $LIB/x86_64/
|
|
||||||
|
|
||||||
# Put the JetCreator tools, content and docs (not available in the linux SDK)
|
|
||||||
JET=$TOOLS/Jet
|
|
||||||
JETCREATOR=$JET/JetCreator
|
|
||||||
JETDEMOCONTENT=$JET/demo_content
|
|
||||||
JETLOGICTEMPLATES=$JET/logic_templates
|
|
||||||
JETDOC=$TEMP_SDK_DIR/docs/JetCreator
|
|
||||||
|
|
||||||
# need to rm these folders since a Mac SDK will have them and it might create a conflict
|
|
||||||
rm -rf $V $JET
|
|
||||||
rm -rf $V $JETDOC
|
|
||||||
|
|
||||||
# now create fresh folders for JetCreator
|
|
||||||
mkdir $V $JET
|
|
||||||
mkdir $V $JETDOC
|
|
||||||
|
|
||||||
cp -r $V ${TOPDIR}external/sonivox/jet_tools/JetCreator $JETCREATOR/
|
|
||||||
cp -r $V ${TOPDIR}external/sonivox/jet_tools/JetCreator_content $JETDEMOCONTENT/
|
|
||||||
cp -r $V ${TOPDIR}external/sonivox/jet_tools/logic_templates $JETLOGICTEMPLATES/
|
|
||||||
chmod $V -R u+w $JETCREATOR # fixes an issue where Cygwin might copy the above as u+rx only
|
|
||||||
cp $V ${TOPDIR}prebuilt/windows/jetcreator/EASDLL.dll $JETCREATOR/
|
|
||||||
|
|
||||||
cp $V ${TOPDIR}external/sonivox/docs/JET_Authoring_Guidelines.html $JETDOC/
|
|
||||||
cp -r $V ${TOPDIR}external/sonivox/docs/JET_Authoring_Guidelines_files $JETDOC/
|
|
||||||
cp $V ${TOPDIR}external/sonivox/docs/JET_Creator_User_Manual.html $JETDOC/
|
|
||||||
cp -r $V ${TOPDIR}external/sonivox/docs/JET_Creator_User_Manual_files $JETDOC/
|
|
||||||
|
|
||||||
# Copy or move platform specific tools to the default platform.
|
|
||||||
cp $V ${TOPDIR}dalvik/dx/etc/dx.bat $PLATFORM_TOOLS/
|
|
||||||
mv $V $TOOLS/{adb.exe,aapt.exe,aidl.exe,dexdump.exe} $PLATFORM_TOOLS/
|
|
||||||
mv $V $TOOLS/Adb*.dll $PLATFORM_TOOLS/
|
|
||||||
mv $V $TOOLS/llvm-rs-cc.exe $PLATFORM_TOOLS/llvm-rs-cc.exe
|
|
||||||
|
|
||||||
# Fix EOL chars to make window users happy - fix all files at the top level
|
# Fix EOL chars to make window users happy - fix all files at the top level
|
||||||
# as well as all batch files including those in platform-tools/
|
# as well as all batch files including those in platform-tools/
|
||||||
|
|||||||
@@ -22,10 +22,13 @@ ifeq ($(strip $(shell which unix2dos todos 2>/dev/null)),)
|
|||||||
$(error Need a unix2dos command. Please 'apt-get install tofrodos')
|
$(error Need a unix2dos command. Please 'apt-get install tofrodos')
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
# Define WIN_SDK_TARGETS, the list of targets located in topdir/sdk
|
||||||
|
# and are tools-dependent, not platform-dependent.
|
||||||
include $(TOPDIR)sdk/build/windows_sdk_tools.mk
|
include $(TOPDIR)sdk/build/windows_sdk_tools.mk
|
||||||
|
|
||||||
# This is the list of target that we want to generate as
|
# This is the list of targets that we want to generate as
|
||||||
# Windows executables.
|
# Windows executables. All the targets specified here are located in
|
||||||
|
# the topdir/development directory and are somehow platform-dependent.
|
||||||
WIN_TARGETS := \
|
WIN_TARGETS := \
|
||||||
aapt adb aidl \
|
aapt adb aidl \
|
||||||
etc1tool \
|
etc1tool \
|
||||||
@@ -84,7 +87,6 @@ $(WIN_SDK_ZIP): winsdk-tools sdk
|
|||||||
$(hide) USB_DRIVER_HOOK=$(USB_DRIVER_HOOK) \
|
$(hide) USB_DRIVER_HOOK=$(USB_DRIVER_HOOK) \
|
||||||
$(TOPDIR)development/build/tools/patch_windows_sdk.sh $(subst @,-q,$(hide)) \
|
$(TOPDIR)development/build/tools/patch_windows_sdk.sh $(subst @,-q,$(hide)) \
|
||||||
$(WIN_SDK_DIR)/$(WIN_SDK_NAME) $(OUT_DIR) $(TOPDIR)
|
$(WIN_SDK_DIR)/$(WIN_SDK_NAME) $(OUT_DIR) $(TOPDIR)
|
||||||
$(hide) strip --strip-all $(WIN_SDK_DIR)/$(WIN_SDK_NAME)/platform-tools/llvm-rs-cc.exe
|
|
||||||
$(hide) $(TOPDIR)sdk/build/patch_windows_sdk.sh $(subst @,-q,$(hide)) \
|
$(hide) $(TOPDIR)sdk/build/patch_windows_sdk.sh $(subst @,-q,$(hide)) \
|
||||||
$(WIN_SDK_DIR)/$(WIN_SDK_NAME) $(OUT_DIR) $(TOPDIR)
|
$(WIN_SDK_DIR)/$(WIN_SDK_NAME) $(OUT_DIR) $(TOPDIR)
|
||||||
$(hide) ( \
|
$(hide) ( \
|
||||||
|
|||||||
Reference in New Issue
Block a user