diff options
author | The Android Open Source Project <initial-contribution@android.com> | 2009-03-03 19:28:42 -0800 |
---|---|---|
committer | The Android Open Source Project <initial-contribution@android.com> | 2009-03-03 19:28:42 -0800 |
commit | 88b607994a148f4af5bffee163e39ce8296750c6 (patch) | |
tree | fa249ff843e976cf034f2029437d3362a8396321 /target | |
parent | 05806d7af62e07c6225b2e7103a1b115ecf6c9ad (diff) | |
download | build-88b607994a148f4af5bffee163e39ce8296750c6.zip build-88b607994a148f4af5bffee163e39ce8296750c6.tar.gz build-88b607994a148f4af5bffee163e39ce8296750c6.tar.bz2 |
auto import from //depot/cupcake/@135843
Diffstat (limited to 'target')
31 files changed, 734 insertions, 0 deletions
diff --git a/target/board/Android.mk b/target/board/Android.mk new file mode 100644 index 0000000..64e3a74 --- /dev/null +++ b/target/board/Android.mk @@ -0,0 +1,54 @@ +# +# Set up product-global definitions and include product-specific rules. +# + +ifneq ($(strip $(TARGET_NO_BOOTLOADER)),true) + INSTALLED_BOOTLOADER_MODULE := $(PRODUCT_OUT)/bootloader + ifeq ($(strip $(TARGET_BOOTLOADER_IS_2ND)),true) + INSTALLED_2NDBOOTLOADER_TARGET := $(PRODUCT_OUT)/2ndbootloader + else + INSTALLED_2NDBOOTLOADER_TARGET := + endif +else + INSTALLED_BOOTLOADER_MODULE := + INSTALLED_2NDBOOTLOADER_TARGET := +endif # TARGET_NO_BOOTLOADER + +ifneq ($(strip $(TARGET_NO_KERNEL)),true) + INSTALLED_KERNEL_TARGET := $(PRODUCT_OUT)/kernel +else + INSTALLED_KERNEL_TARGET := +endif + +ifneq ($(strip $(TARGET_NO_RADIOIMAGE)),true) + INSTALLED_RADIOIMAGE_TARGET := $(PRODUCT_OUT)/radio.img +else + INSTALLED_RADIOIMAGE_TARGET := +endif + +ifeq (,$(wildcard $(TARGET_DEVICE_DIR)/AndroidBoard.mk)) + ifeq (,$(wildcard $(TARGET_DEVICE_DIR)/Android.mk)) + $(error Missing "$(TARGET_DEVICE_DIR)/AndroidBoard.mk") + else + # TODO: Remove this check after people have had a chance to switch, + # after April 2009. + $(error Please rename "$(TARGET_DEVICE_DIR)/Android.mk" to "$(TARGET_DEVICE_DIR)/AndroidBoard.mk") + endif +endif +include $(TARGET_DEVICE_DIR)/AndroidBoard.mk + +# Generate a file that contains various information about the +# device we're building for. This file is typically packaged up +# with everything else. +# +# If the file "board-info.txt" appears in $(TARGET_DEVICE_DIR), +# it will be appended to the output file. +# +INSTALLED_ANDROID_INFO_TXT_TARGET := $(PRODUCT_OUT)/android-info.txt +board_info_txt := $(wildcard $(TARGET_DEVICE_DIR)/board-info.txt) +$(INSTALLED_ANDROID_INFO_TXT_TARGET): $(board_info_txt) + $(call pretty,"Generated: ($@)") + $(hide) echo "board=$(TARGET_BOOTLOADER_BOARD_NAME)" > $@ +ifdef board_info_txt + $(hide) cat $< >> $@ +endif diff --git a/target/board/emulator/AndroidBoard.mk b/target/board/emulator/AndroidBoard.mk new file mode 100644 index 0000000..09badee --- /dev/null +++ b/target/board/emulator/AndroidBoard.mk @@ -0,0 +1,10 @@ +LOCAL_PATH := $(call my-dir) + +file := $(TARGET_OUT_KEYLAYOUT)/tuttle2.kl +ALL_PREBUILT += $(file) +$(file) : $(LOCAL_PATH)/tuttle2.kl | $(ACP) + $(transform-prebuilt-to-target) + +include $(CLEAR_VARS) +LOCAL_SRC_FILES := tuttle2.kcm +include $(BUILD_KEY_CHAR_MAP) diff --git a/target/board/emulator/BoardConfig.mk b/target/board/emulator/BoardConfig.mk new file mode 100644 index 0000000..784118a --- /dev/null +++ b/target/board/emulator/BoardConfig.mk @@ -0,0 +1,9 @@ +# config.mk +# +# Product-specific compile-time definitions. +# + +# The generic product target doesn't have any hardware-specific pieces. +TARGET_NO_BOOTLOADER := true +TARGET_NO_KERNEL := true +HAVE_HTC_AUDIO_DRIVER := true diff --git a/target/board/emulator/README.txt b/target/board/emulator/README.txt new file mode 100644 index 0000000..6a1ec89 --- /dev/null +++ b/target/board/emulator/README.txt @@ -0,0 +1,10 @@ +The "emulator" product defines an almost non-hardware-specific target +without a kernel or bootloader, except that it defines the +HAVE_HTC_AUDIO_DRIVER constant, since that is what the emulator +emulates currently. + +It can be used to build the entire user-level system, and +will work with the emulator. + +It is not a product "base class"; no other products inherit +from it or use it in any way. diff --git a/target/board/emulator/tuttle2.kcm b/target/board/emulator/tuttle2.kcm new file mode 100644 index 0000000..0a2dd8c --- /dev/null +++ b/target/board/emulator/tuttle2.kcm @@ -0,0 +1,66 @@ +[type=QWERTY] + +# keycode display number base caps fn caps_fn + +A 'A' '%' 'a' 'A' '%' 0x00 +B 'B' '=' 'b' 'B' '=' 0x00 +C 'C' '8' 'c' 'C' '8' 0x00E7 +D 'D' '5' 'd' 'D' '5' 0x00 +E 'E' '2' 'e' 'E' '2' 0x0301 +F 'F' '6' 'f' 'F' '6' 0x00A5 +G 'G' '-' 'g' 'G' '-' '_' +H 'H' '[' 'h' 'H' '[' '{' +I 'I' '$' 'i' 'I' '$' 0x0302 +J 'J' ']' 'j' 'J' ']' '}' +K 'K' '"' 'k' 'K' '"' '~' +L 'L' ''' 'l' 'L' ''' '`' +M 'M' '>' 'm' 'M' '>' 0x00 +N 'N' '<' 'n' 'N' '<' 0x0303 +O 'O' '(' 'o' 'O' '(' 0x00 +P 'P' ')' 'p' 'P' ')' 0x00 +Q 'Q' '*' 'q' 'Q' '*' 0x0300 +R 'R' '3' 'r' 'R' '3' 0x20AC +S 'S' '4' 's' 'S' '4' 0x00DF +T 'T' '+' 't' 'T' '+' 0x00A3 +U 'U' '&' 'u' 'U' '&' 0x0308 +V 'V' '9' 'v' 'V' '9' '^' +W 'W' '1' 'w' 'W' '1' 0x00 +X 'X' '7' 'x' 'X' '7' 0xEF00 +Y 'Y' '!' 'y' 'Y' '!' 0x00A1 +Z 'Z' '#' 'z' 'Z' '#' 0x00 + +COMMA ',' ',' ',' ';' ';' '|' +PERIOD '.' '.' '.' ':' ':' 0x2026 +AT '@' '0' '@' '0' '0' 0x2022 +SLASH '/' '/' '/' '?' '?' '\' + +SPACE 0x20 0x20 0x20 0x20 0xEF01 0xEF01 +ENTER 0xa 0xa 0xa 0xa 0xa 0xa + +# on pc keyboards +TAB 0x9 0x9 0x9 0x9 0x9 0x9 +0 '0' '0' '0' ')' ')' ')' +1 '1' '1' '1' '!' '!' '!' +2 '2' '2' '2' '@' '@' '@' +3 '3' '3' '3' '#' '#' '#' +4 '4' '4' '4' '$' '$' '$' +5 '5' '5' '5' '%' '%' '%' +6 '6' '6' '6' '^' '^' '^' +7 '7' '7' '7' '&' '&' '&' +8 '8' '8' '8' '*' '*' '*' +9 '9' '9' '9' '(' '(' '(' + +GRAVE '`' '`' '`' '~' '`' '~' +MINUS '-' '-' '-' '_' '-' '_' +EQUALS '=' '=' '=' '+' '=' '+' +LEFT_BRACKET '[' '[' '[' '{' '[' '{' +RIGHT_BRACKET ']' ']' ']' '}' ']' '}' +BACKSLASH '\' '\' '\' '|' '\' '|' +SEMICOLON ';' ';' ';' ':' ';' ':' +APOSTROPHE ''' ''' ''' '"' ''' '"' +STAR '*' '*' '*' '*' '*' '*' +POUND '#' '#' '#' '#' '#' '#' +PLUS '+' '+' '+' '+' '+' '+' + + + diff --git a/target/board/emulator/tuttle2.kl b/target/board/emulator/tuttle2.kl new file mode 100644 index 0000000..a48a5ab --- /dev/null +++ b/target/board/emulator/tuttle2.kl @@ -0,0 +1,74 @@ +key 2 1 +key 3 2 +key 4 3 +key 5 4 +key 6 5 +key 7 6 +key 8 7 +key 9 8 +key 10 9 +key 11 0 +key 158 BACK WAKE_DROPPED +key 230 SOFT_RIGHT WAKE +key 60 SOFT_RIGHT WAKE +key 107 ENDCALL WAKE_DROPPED +key 62 ENDCALL WAKE_DROPPED +key 229 MENU WAKE_DROPPED +key 59 MENU WAKE_DROPPED +key 228 POUND +key 227 STAR +key 231 CALL WAKE_DROPPED +key 61 CALL WAKE_DROPPED +key 232 DPAD_CENTER WAKE_DROPPED +key 108 DPAD_DOWN WAKE_DROPPED +key 103 DPAD_UP WAKE_DROPPED +key 102 HOME WAKE +key 105 DPAD_LEFT WAKE_DROPPED +key 106 DPAD_RIGHT WAKE_DROPPED +key 115 VOLUME_UP +key 114 VOLUME_DOWN +key 116 POWER WAKE +key 212 SLASH + +key 16 Q +key 17 W +key 18 E +key 19 R +key 20 T +key 21 Y +key 22 U +key 23 I +key 24 O +key 25 P + +key 30 A +key 31 S +key 32 D +key 33 F +key 34 G +key 35 H +key 36 J +key 37 K +key 38 L +key 14 DEL + +key 44 Z +key 45 X +key 46 C +key 47 V +key 48 B +key 49 N +key 50 M +key 51 COMMA +key 52 PERIOD +key 28 ENTER + +key 56 ALT_LEFT +key 42 SHIFT_LEFT +key 215 AT +key 57 SPACE +key 53 SLASH +key 127 SYM +key 100 ALT_RIGHT + +key 399 GRAVE diff --git a/target/board/generic/AndroidBoard.mk b/target/board/generic/AndroidBoard.mk new file mode 100644 index 0000000..09badee --- /dev/null +++ b/target/board/generic/AndroidBoard.mk @@ -0,0 +1,10 @@ +LOCAL_PATH := $(call my-dir) + +file := $(TARGET_OUT_KEYLAYOUT)/tuttle2.kl +ALL_PREBUILT += $(file) +$(file) : $(LOCAL_PATH)/tuttle2.kl | $(ACP) + $(transform-prebuilt-to-target) + +include $(CLEAR_VARS) +LOCAL_SRC_FILES := tuttle2.kcm +include $(BUILD_KEY_CHAR_MAP) diff --git a/target/board/generic/BoardConfig.mk b/target/board/generic/BoardConfig.mk new file mode 100644 index 0000000..a874742 --- /dev/null +++ b/target/board/generic/BoardConfig.mk @@ -0,0 +1,11 @@ +# config.mk +# +# Product-specific compile-time definitions. +# + +# The generic product target doesn't have any hardware-specific pieces. +TARGET_NO_BOOTLOADER := true +TARGET_NO_KERNEL := true +TARGET_NO_RADIOIMAGE := true +HAVE_HTC_AUDIO_DRIVER := true +BOARD_USES_GENERIC_AUDIO := true diff --git a/target/board/generic/README.txt b/target/board/generic/README.txt new file mode 100644 index 0000000..ddac68e --- /dev/null +++ b/target/board/generic/README.txt @@ -0,0 +1,9 @@ +The "generic" product defines a non-hardware-specific target +without a kernel or bootloader. + +It can be used to build the entire user-level system, and +will work with the emulator, though sound will not work +(see the "emulator" product for that). + +It is not a product "base class"; no other products inherit +from it or use it in any way. diff --git a/target/board/generic/system.prop b/target/board/generic/system.prop new file mode 100644 index 0000000..f2424c9 --- /dev/null +++ b/target/board/generic/system.prop @@ -0,0 +1,6 @@ +# +# system.prop for generic sdk +# + +rild.libpath=/system/lib/libreference-ril.so +rild.libargs=-d /dev/ttyS0 diff --git a/target/board/generic/tuttle2.kcm b/target/board/generic/tuttle2.kcm new file mode 100644 index 0000000..0a2dd8c --- /dev/null +++ b/target/board/generic/tuttle2.kcm @@ -0,0 +1,66 @@ +[type=QWERTY] + +# keycode display number base caps fn caps_fn + +A 'A' '%' 'a' 'A' '%' 0x00 +B 'B' '=' 'b' 'B' '=' 0x00 +C 'C' '8' 'c' 'C' '8' 0x00E7 +D 'D' '5' 'd' 'D' '5' 0x00 +E 'E' '2' 'e' 'E' '2' 0x0301 +F 'F' '6' 'f' 'F' '6' 0x00A5 +G 'G' '-' 'g' 'G' '-' '_' +H 'H' '[' 'h' 'H' '[' '{' +I 'I' '$' 'i' 'I' '$' 0x0302 +J 'J' ']' 'j' 'J' ']' '}' +K 'K' '"' 'k' 'K' '"' '~' +L 'L' ''' 'l' 'L' ''' '`' +M 'M' '>' 'm' 'M' '>' 0x00 +N 'N' '<' 'n' 'N' '<' 0x0303 +O 'O' '(' 'o' 'O' '(' 0x00 +P 'P' ')' 'p' 'P' ')' 0x00 +Q 'Q' '*' 'q' 'Q' '*' 0x0300 +R 'R' '3' 'r' 'R' '3' 0x20AC +S 'S' '4' 's' 'S' '4' 0x00DF +T 'T' '+' 't' 'T' '+' 0x00A3 +U 'U' '&' 'u' 'U' '&' 0x0308 +V 'V' '9' 'v' 'V' '9' '^' +W 'W' '1' 'w' 'W' '1' 0x00 +X 'X' '7' 'x' 'X' '7' 0xEF00 +Y 'Y' '!' 'y' 'Y' '!' 0x00A1 +Z 'Z' '#' 'z' 'Z' '#' 0x00 + +COMMA ',' ',' ',' ';' ';' '|' +PERIOD '.' '.' '.' ':' ':' 0x2026 +AT '@' '0' '@' '0' '0' 0x2022 +SLASH '/' '/' '/' '?' '?' '\' + +SPACE 0x20 0x20 0x20 0x20 0xEF01 0xEF01 +ENTER 0xa 0xa 0xa 0xa 0xa 0xa + +# on pc keyboards +TAB 0x9 0x9 0x9 0x9 0x9 0x9 +0 '0' '0' '0' ')' ')' ')' +1 '1' '1' '1' '!' '!' '!' +2 '2' '2' '2' '@' '@' '@' +3 '3' '3' '3' '#' '#' '#' +4 '4' '4' '4' '$' '$' '$' +5 '5' '5' '5' '%' '%' '%' +6 '6' '6' '6' '^' '^' '^' +7 '7' '7' '7' '&' '&' '&' +8 '8' '8' '8' '*' '*' '*' +9 '9' '9' '9' '(' '(' '(' + +GRAVE '`' '`' '`' '~' '`' '~' +MINUS '-' '-' '-' '_' '-' '_' +EQUALS '=' '=' '=' '+' '=' '+' +LEFT_BRACKET '[' '[' '[' '{' '[' '{' +RIGHT_BRACKET ']' ']' ']' '}' ']' '}' +BACKSLASH '\' '\' '\' '|' '\' '|' +SEMICOLON ';' ';' ';' ':' ';' ':' +APOSTROPHE ''' ''' ''' '"' ''' '"' +STAR '*' '*' '*' '*' '*' '*' +POUND '#' '#' '#' '#' '#' '#' +PLUS '+' '+' '+' '+' '+' '+' + + + diff --git a/target/board/generic/tuttle2.kl b/target/board/generic/tuttle2.kl new file mode 100644 index 0000000..a78a6eb --- /dev/null +++ b/target/board/generic/tuttle2.kl @@ -0,0 +1,74 @@ +key 2 1 +key 3 2 +key 4 3 +key 5 4 +key 6 5 +key 7 6 +key 8 7 +key 9 8 +key 10 9 +key 11 0 +key 158 BACK WAKE_DROPPED +key 230 SOFT_RIGHT WAKE +key 60 SOFT_RIGHT WAKE +key 107 ENDCALL WAKE_DROPPED +key 62 ENDCALL WAKE_DROPPED +key 229 MENU WAKE_DROPPED +key 59 MENU WAKE_DROPPED +key 228 POUND +key 227 STAR +key 231 CALL WAKE_DROPPED +key 61 CALL WAKE_DROPPED +key 232 DPAD_CENTER WAKE_DROPPED +key 108 DPAD_DOWN WAKE_DROPPED +key 103 DPAD_UP WAKE_DROPPED +key 102 HOME WAKE +key 105 DPAD_LEFT WAKE_DROPPED +key 106 DPAD_RIGHT WAKE_DROPPED +key 115 VOLUME_UP +key 114 VOLUME_DOWN +key 116 POWER WAKE +key 212 SLASH + +key 16 Q +key 17 W +key 18 E +key 19 R +key 20 T +key 21 Y +key 22 U +key 23 I +key 24 O +key 25 P + +key 30 A +key 31 S +key 32 D +key 33 F +key 34 G +key 35 H +key 36 J +key 37 K +key 38 L +key 14 DEL + +key 44 Z +key 45 X +key 46 C +key 47 V +key 48 B +key 49 N +key 50 M +key 51 COMMA +key 52 PERIOD +key 28 ENTER + +key 56 ALT_LEFT +key 42 SHIFT_LEFT +key 215 AT +key 57 SPACE +key 53 SLASH +key 127 SYM +key 100 ALT_LEFT + +key 399 GRAVE diff --git a/target/board/sim/AndroidBoard.mk b/target/board/sim/AndroidBoard.mk new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/target/board/sim/AndroidBoard.mk diff --git a/target/board/sim/BoardConfig.mk b/target/board/sim/BoardConfig.mk new file mode 100644 index 0000000..92679d9 --- /dev/null +++ b/target/board/sim/BoardConfig.mk @@ -0,0 +1,22 @@ +# config.mk +# +# Product-specific compile-time definitions. +# + +# Don't try prelinking or compressing the shared libraries +# used by the simulator. The host OS won't know what to do +# with them, and they may not even be ELF files. +# +# These definitions override the defaults in config/config.make. +TARGET_COMPRESS_MODULE_SYMBOLS := false +TARGET_PRELINK_MODULE := false + +# Don't try to build a bootloader. +TARGET_NO_BOOTLOADER := true + +# Don't bother with a kernel +TARGET_NO_KERNEL := true + +#the simulator partially emulates the original HTC /dev/eac audio interface +HAVE_HTC_AUDIO_DRIVER := true +BOARD_USES_GENERIC_AUDIO := true diff --git a/target/product/AndroidProducts.mk b/target/product/AndroidProducts.mk new file mode 100644 index 0000000..1bf3c3f --- /dev/null +++ b/target/product/AndroidProducts.mk @@ -0,0 +1,33 @@ +# +# Copyright (C) 2008 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 file should set PRODUCT_MAKEFILES to a list of product makefiles +# to expose to the build system. LOCAL_DIR will already be set to +# the directory containing this file. +# +# This file may not rely on the value of any variable other than +# LOCAL_DIR; do not use any conditionals, and do not look up the +# value of any variable that isn't set in this file or in a file that +# it includes. +# + +PRODUCT_MAKEFILES := \ + $(LOCAL_DIR)/generic.mk \ + $(LOCAL_DIR)/min_dev.mk \ + $(LOCAL_DIR)/sdk.mk \ + $(LOCAL_DIR)/sim.mk \ + $(LOCAL_DIR)/generic_with_google.mk diff --git a/target/product/core.mk b/target/product/core.mk new file mode 100644 index 0000000..117bb11 --- /dev/null +++ b/target/product/core.mk @@ -0,0 +1,23 @@ +PRODUCT_BRAND := +PRODUCT_NAME := +PRODUCT_DEVICE := +PRODUCT_POLICY := android.policy_phone +PRODUCT_PROPERTY_OVERRIDES := \ + ro.config.notification_sound=F1_New_SMS.ogg + +PRODUCT_PACKAGES := \ + framework-res \ + Browser \ + Contacts \ + Home \ + HTMLViewer \ + Phone \ + ContactsProvider \ + DownloadProvider \ + GoogleSearch \ + MediaProvider \ + SettingsProvider \ + TelephonyProvider \ + UserDictionaryProvider \ + PackageInstaller \ + Bugreport diff --git a/target/product/generic.mk b/target/product/generic.mk new file mode 100644 index 0000000..b9bc070 --- /dev/null +++ b/target/product/generic.mk @@ -0,0 +1,26 @@ +# This is a generic product that isn't specialized for a specific device. +# It includes the base Android platform. If you need Google-specific features, +# you should derive from generic_with_google.mk + +PRODUCT_PACKAGES := \ + AlarmClock \ + AlarmProvider \ + Calendar \ + Camera \ + DrmProvider \ + LatinIME \ + Mms \ + Music \ + Settings \ + Sync \ + Updater \ + CalendarProvider \ + SubscribedFeedsProvider \ + SyncProvider + +$(call inherit-product, $(SRC_TARGET_DIR)/product/core.mk) + +# Overrides +PRODUCT_BRAND := generic +PRODUCT_DEVICE := generic +PRODUCT_NAME := generic diff --git a/target/product/generic_with_google.mk b/target/product/generic_with_google.mk new file mode 100755 index 0000000..af499b3 --- /dev/null +++ b/target/product/generic_with_google.mk @@ -0,0 +1,13 @@ +# This is a generic product that isn't specialized for a specific device. +# It includes the base Android platform including some Google-specific features. +# If you do not want to include Google specific features, you should derive +# from generic.mk + +PRODUCT_PACKAGES := \ + GoogleContactsProvider \ + GoogleSubscribedFeedsProvider + +$(call inherit-product, $(SRC_TARGET_DIR)/product/generic.mk) + +# Overrides +PRODUCT_NAME := generic_with_google diff --git a/target/product/min_dev.mk b/target/product/min_dev.mk new file mode 100644 index 0000000..7d0fbe6 --- /dev/null +++ b/target/product/min_dev.mk @@ -0,0 +1,19 @@ + +PRODUCT_POLICY := android.policy_phone +PRODUCT_PROPERTY_OVERRIDES := \ + ro.config.notification_sound=F1_New_SMS.ogg +PRODUCT_BRAND := generic +PRODUCT_NAME := min_dev +PRODUCT_DEVICE := generic + +PRODUCT_PACKAGES := \ + DownloadProvider \ + GoogleSearch \ + MediaProvider \ + SettingsProvider \ + PackageInstaller \ + Bugreport \ + Launcher \ + Settings \ + sqlite3 + diff --git a/target/product/sdk.mk b/target/product/sdk.mk new file mode 100644 index 0000000..e8109e5 --- /dev/null +++ b/target/product/sdk.mk @@ -0,0 +1,29 @@ +PRODUCT_PROPERTY_OVERRIDES := + +PRODUCT_PACKAGES := \ + AlarmClock \ + ApiDemos \ + Camera \ + Development \ + DrmProvider \ + Email \ + Fallback \ + GPSEnable \ + Launcher \ + Maps \ + Music \ + Mms \ + Settings \ + SdkSetup \ + CustomLocale \ + gpstest \ + sqlite3 \ + SoftKeyboard + + +$(call inherit-product, $(SRC_TARGET_DIR)/product/core.mk) + +# Overrides +PRODUCT_BRAND := generic +PRODUCT_NAME := sdk +PRODUCT_DEVICE := generic diff --git a/target/product/security/README b/target/product/security/README new file mode 100644 index 0000000..b92693d --- /dev/null +++ b/target/product/security/README @@ -0,0 +1,38 @@ +The following commands were used to generate the test key pair: + + openssl genrsa -3 -out testkey.pem 2048 + + openssl req -new -x509 -key testkey.pem -out testkey.x509.pem -days 10000 \ + -subj '/C=US/ST=California/L=Mountain View/O=Android/OU=Android/CN=Android/emailAddress=android@android.com' + + openssl pkcs8 -in testkey.pem -topk8 -outform DER -out testkey.pk8 -nocrypt + +Alternatively you can use the "mkkey.sh" command included in this directory. + +The following standard test keys are currently included: + +testkey -- a generic key for packages that do not otherwise specify a key. +platform -- a test key for packages that are part of the core platform. +shared -- a test key for things that are shared in the home/contacts process. +media -- a test key for packages that are part of the media/download system. + +These test keys are used strictly in development, and should never be assumed +to convey any sort of validity. When $BUILD_SECURE=true, the code should not +honor these keys in any context. + + +signing using the openssl commandline (for boot/system images) +-------------------------------------------------------------- + +1. convert pk8 format key to pem format + % openssl pkcs8 -inform DER -nocrypt -in testkey.pk8 -out testkey.pem + +2. create a signature using the pem format key + % openssl dgst -binary -sha1 -sign testkey.pem FILE > FILE.sig + +extracting public keys for embedding +------------------------------------ +it's a Java tool +but it generates C code +take a look at commands/recovery/Android.mk +you'll see it running $(HOST_OUT_JAVA_LIBRARIES)/dumpkey.jar
\ No newline at end of file diff --git a/target/product/security/media.pk8 b/target/product/security/media.pk8 Binary files differnew file mode 100644 index 0000000..a6db9ba --- /dev/null +++ b/target/product/security/media.pk8 diff --git a/target/product/security/media.x509.pem b/target/product/security/media.x509.pem new file mode 100644 index 0000000..98cd443 --- /dev/null +++ b/target/product/security/media.x509.pem @@ -0,0 +1,27 @@ +-----BEGIN CERTIFICATE----- +MIIEqDCCA5CgAwIBAgIJAPK5jmEjVyxOMA0GCSqGSIb3DQEBBAUAMIGUMQswCQYD +VQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNTW91bnRhaW4g +VmlldzEQMA4GA1UEChMHQW5kcm9pZDEQMA4GA1UECxMHQW5kcm9pZDEQMA4GA1UE +AxMHQW5kcm9pZDEiMCAGCSqGSIb3DQEJARYTYW5kcm9pZEBhbmRyb2lkLmNvbTAe +Fw0wODA0MTUyMzQwNTdaFw0zNTA5MDEyMzQwNTdaMIGUMQswCQYDVQQGEwJVUzET +MBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNTW91bnRhaW4gVmlldzEQMA4G +A1UEChMHQW5kcm9pZDEQMA4GA1UECxMHQW5kcm9pZDEQMA4GA1UEAxMHQW5kcm9p +ZDEiMCAGCSqGSIb3DQEJARYTYW5kcm9pZEBhbmRyb2lkLmNvbTCCASAwDQYJKoZI +hvcNAQEBBQADggENADCCAQgCggEBAK4lDFoW75f8KGmsZRsyF8w2ug6GlkFo1YoE +n0DOhYZxI6P/tPbZScM88to6BcI+rKpX2AOImxdZvPWefG8hiQriUIW37VaqYmwJ +ie+czTY2LKDo0blgP9TYModnkmzMCQxot3Wuf/MJNMw2nvKFWiZn3wxmf9DHz12O +umVYBnNzA7tiRybquu37cvB+16dqs8uaOBxLfc2AmxQNiR8AITvkAfWNagamHq3D +qcLxxlZyhbCa4JNCpm+kIer5Ot91c6AowzHXBgGrOvfMhAM+znx3KjpbhrDb6dd3 +w6SKqYAe3O4ngVifRNnkETl5YAV2qZQQuoEJElna2YxsaP94S48CAQOjgfwwgfkw +HQYDVR0OBBYEFMopPKqLwO0+VC7vQgWiv/K1fk11MIHJBgNVHSMEgcEwgb6AFMop +PKqLwO0+VC7vQgWiv/K1fk11oYGapIGXMIGUMQswCQYDVQQGEwJVUzETMBEGA1UE +CBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNTW91bnRhaW4gVmlldzEQMA4GA1UEChMH +QW5kcm9pZDEQMA4GA1UECxMHQW5kcm9pZDEQMA4GA1UEAxMHQW5kcm9pZDEiMCAG +CSqGSIb3DQEJARYTYW5kcm9pZEBhbmRyb2lkLmNvbYIJAPK5jmEjVyxOMAwGA1Ud +EwQFMAMBAf8wDQYJKoZIhvcNAQEEBQADggEBAITelRbV5KhyF6c9qEhwSPUzc6X3 +M/OQ1hvfPMnlJRYlv8qnwxWcriddFyqa4eh21UWBJ6xUL2gpDdUQwAKdj1Hg7hVr +e3tazbOUJBuOx4t05cQsXK+uFWyvW9GZojonUk2gct6743hGSlM2MLDk0P+34I7L +cB+ttjecdEZ/bgDG7YiFlTgHkgOHVgB4csjjAHr0I6V6LKs6KChptkxLe9X8GH0K +fiQVll1ark4Hpt91G0p16Xk8kYphK4HNC2KK7gFo3ETkexDTWTJghJ1q321yfcJE +RMIh0/nsw2jK0HmZ8rgQW8HyDTjUEGbMFBHCV6lupDSfV0ZWVQfk6AIKGoE= +-----END CERTIFICATE----- diff --git a/target/product/security/mkkey.sh b/target/product/security/mkkey.sh new file mode 100644 index 0000000..86744f6 --- /dev/null +++ b/target/product/security/mkkey.sh @@ -0,0 +1,15 @@ +if ["$1" == ""]; then + echo "Create a test certificate key." + echo "Usage: $0 NAME" + echo "Will generate NAME.pk8 and NAME.x509.pem" + echo " /C=US/ST=California/L=Mountain View/O=Android/OU=Android/CN=Android/emailAddress=android@android.com" + return +fi + +openssl genrsa -3 -out $1.pem 2048 + +openssl req -new -x509 -key $1.pem -out $1.x509.pem -days 10000 \ + -subj '/C=US/ST=California/L=Mountain View/O=Android/OU=Android/CN=Android/emailAddress=android@android.com' + +openssl pkcs8 -in $1.pem -topk8 -outform DER -out $1.pk8 -nocrypt + diff --git a/target/product/security/platform.pk8 b/target/product/security/platform.pk8 Binary files differnew file mode 100644 index 0000000..e27a393 --- /dev/null +++ b/target/product/security/platform.pk8 diff --git a/target/product/security/platform.x509.pem b/target/product/security/platform.x509.pem new file mode 100644 index 0000000..087f02e --- /dev/null +++ b/target/product/security/platform.x509.pem @@ -0,0 +1,27 @@ +-----BEGIN CERTIFICATE----- +MIIEqDCCA5CgAwIBAgIJALOZgIbQVs/6MA0GCSqGSIb3DQEBBAUAMIGUMQswCQYD +VQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNTW91bnRhaW4g +VmlldzEQMA4GA1UEChMHQW5kcm9pZDEQMA4GA1UECxMHQW5kcm9pZDEQMA4GA1UE +AxMHQW5kcm9pZDEiMCAGCSqGSIb3DQEJARYTYW5kcm9pZEBhbmRyb2lkLmNvbTAe +Fw0wODA0MTUyMjQwNTBaFw0zNTA5MDEyMjQwNTBaMIGUMQswCQYDVQQGEwJVUzET +MBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNTW91bnRhaW4gVmlldzEQMA4G +A1UEChMHQW5kcm9pZDEQMA4GA1UECxMHQW5kcm9pZDEQMA4GA1UEAxMHQW5kcm9p +ZDEiMCAGCSqGSIb3DQEJARYTYW5kcm9pZEBhbmRyb2lkLmNvbTCCASAwDQYJKoZI +hvcNAQEBBQADggENADCCAQgCggEBAJx4BZKsDV04HN6qZezIpgBuNkgMbXIHsSAR +vlCGOqvitV0Amt9xRtbyICKAx81Ne9smJDuKgGwms0sTdSOkkmgiSQTcAUk+fArP +GgXIdPabA3tgMJ2QdNJCgOFrrSqHNDYZUer3KkgtCbIEsYdeEqyYwap3PWgAuer9 +5W1Yvtjo2hb5o2AJnDeoNKbf7be2tEoEngeiafzPLFSW8s821k35CjuNjzSjuqtM +9TNxqydxmzulh1StDFP8FOHbRdUeI0+76TybpO35zlQmE1DsU1YHv2mi/0qgfbX3 +6iANCabBtJ4hQC+J7RGQiTqrWpGA8VLoL4WkV1PPX8GQccXuyCcCAQOjgfwwgfkw +HQYDVR0OBBYEFE/koLPdnLop9x1yh8Tnw48ghsKZMIHJBgNVHSMEgcEwgb6AFE/k +oLPdnLop9x1yh8Tnw48ghsKZoYGapIGXMIGUMQswCQYDVQQGEwJVUzETMBEGA1UE +CBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNTW91bnRhaW4gVmlldzEQMA4GA1UEChMH +QW5kcm9pZDEQMA4GA1UECxMHQW5kcm9pZDEQMA4GA1UEAxMHQW5kcm9pZDEiMCAG +CSqGSIb3DQEJARYTYW5kcm9pZEBhbmRyb2lkLmNvbYIJALOZgIbQVs/6MAwGA1Ud +EwQFMAMBAf8wDQYJKoZIhvcNAQEEBQADggEBAFclUbjZOh9z3g9tRp+G2tZwFAAp +PIigzXzXeLc9r8wZf6t25iEuVsHHYc/EL9cz3lLFCuCIFM78CjtaGkNGBU2Cnx2C +tCsgSL+ItdFJKe+F9g7dEtctVWV+IuPoXQTIMdYT0Zk4u4mCJH+jISVroS0dao+S +6h2xw3Mxe6DAN/DRr/ZFrvIkl5+6bnoUvAJccbmBOM7z3fwFlhfPJIRc97QNY4L3 +J17XOElatuWTG5QhdlxJG3L7aOCA29tYwgKdNHyLMozkPvaosVUz7fvpib1qSN1L +IC7alMarjdW4OZID2q4u1EYjLk/pvZYTlMYwDlE448/Shebk5INTjLixs1c= +-----END CERTIFICATE----- diff --git a/target/product/security/shared.pk8 b/target/product/security/shared.pk8 Binary files differnew file mode 100644 index 0000000..cf99acd --- /dev/null +++ b/target/product/security/shared.pk8 diff --git a/target/product/security/shared.x509.pem b/target/product/security/shared.x509.pem new file mode 100644 index 0000000..7f886a8 --- /dev/null +++ b/target/product/security/shared.x509.pem @@ -0,0 +1,27 @@ +-----BEGIN CERTIFICATE----- +MIIEqDCCA5CgAwIBAgIJAPKnM5a9OHZ6MA0GCSqGSIb3DQEBBAUAMIGUMQswCQYD +VQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNTW91bnRhaW4g +VmlldzEQMA4GA1UEChMHQW5kcm9pZDEQMA4GA1UECxMHQW5kcm9pZDEQMA4GA1UE +AxMHQW5kcm9pZDEiMCAGCSqGSIb3DQEJARYTYW5kcm9pZEBhbmRyb2lkLmNvbTAe +Fw0wODA3MjMyMTU3NTlaFw0zNTEyMDkyMTU3NTlaMIGUMQswCQYDVQQGEwJVUzET +MBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNTW91bnRhaW4gVmlldzEQMA4G +A1UEChMHQW5kcm9pZDEQMA4GA1UECxMHQW5kcm9pZDEQMA4GA1UEAxMHQW5kcm9p +ZDEiMCAGCSqGSIb3DQEJARYTYW5kcm9pZEBhbmRyb2lkLmNvbTCCASAwDQYJKoZI +hvcNAQEBBQADggENADCCAQgCggEBAMjC2/0JSi30XD/xoy7SGAXscvxY0BeXG9D2 +tSwmLXCBnRkZZ+FY39Oix/Gz4OgM5UXXnShIIgIR64bw/YMS03tCDBE3UMyUYYro +cvSIZGO9xGJ8qgwEg8hkk+NRVXEXAzi/3MTNat3RwKLzX1zyTtPkBDo+WOKwXmZM +zeEry2dzX9bfEknDaeYlQrwKRynlORf1w4/6UtF7c8nHN5jdsY7UgVkIdVR+Zr/F +2spMJabrlg7ZaSNwnaMCumRstJazJehsXIsuejN3srvkx88zJUKRFj9okVKsCIVQ +yDxQj0v1rfCu1aLcoFg/mrCtF2UNt+6ksj/bRYhVR9D+q3IYOIkCAQOjgfwwgfkw +HQYDVR0OBBYEFMtMfizbs/CtqY2reZaNFy6dux7RMIHJBgNVHSMEgcEwgb6AFMtM +fizbs/CtqY2reZaNFy6dux7RoYGapIGXMIGUMQswCQYDVQQGEwJVUzETMBEGA1UE +CBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNTW91bnRhaW4gVmlldzEQMA4GA1UEChMH +QW5kcm9pZDEQMA4GA1UECxMHQW5kcm9pZDEQMA4GA1UEAxMHQW5kcm9pZDEiMCAG +CSqGSIb3DQEJARYTYW5kcm9pZEBhbmRyb2lkLmNvbYIJAPKnM5a9OHZ6MAwGA1Ud +EwQFMAMBAf8wDQYJKoZIhvcNAQEEBQADggEBAECo0JaZeVnpF6NsRCRra6wrrgVD +fs2JeUEY94NHIDUtHG+KObCGmUL02mWYH6opUdM5cRKewZIdeVZxxSfW4knyUoKf +r1tZExAxHi3gllANVorUEUplbcNKjG9hBFOvwep5ktukqns/hUOm41wHKN53/pfu +rIN3H9DskPjkRJQ07gtgRXg+cMei5GAkkmDgA892CNw1Kkye9wbe9LJgUOl4ri// +16MyN4cBSRXrPMh0/MeprpMId8XIx9HC4qjuhjyJGA0YVc7bpADnukPMyqckPTl+ +fA6Ojk19T5K2u+rUnAzwGAae3coufi+0Zo2J2715UNDNJUGA+h6q/CpVb4Q= +-----END CERTIFICATE----- diff --git a/target/product/security/testkey.pk8 b/target/product/security/testkey.pk8 Binary files differnew file mode 100644 index 0000000..586c1bd --- /dev/null +++ b/target/product/security/testkey.pk8 diff --git a/target/product/security/testkey.x509.pem b/target/product/security/testkey.x509.pem new file mode 100644 index 0000000..e242d83 --- /dev/null +++ b/target/product/security/testkey.x509.pem @@ -0,0 +1,27 @@ +-----BEGIN CERTIFICATE----- +MIIEqDCCA5CgAwIBAgIJAJNurL4H8gHfMA0GCSqGSIb3DQEBBQUAMIGUMQswCQYD +VQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNTW91bnRhaW4g +VmlldzEQMA4GA1UEChMHQW5kcm9pZDEQMA4GA1UECxMHQW5kcm9pZDEQMA4GA1UE +AxMHQW5kcm9pZDEiMCAGCSqGSIb3DQEJARYTYW5kcm9pZEBhbmRyb2lkLmNvbTAe +Fw0wODAyMjkwMTMzNDZaFw0zNTA3MTcwMTMzNDZaMIGUMQswCQYDVQQGEwJVUzET +MBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNTW91bnRhaW4gVmlldzEQMA4G +A1UEChMHQW5kcm9pZDEQMA4GA1UECxMHQW5kcm9pZDEQMA4GA1UEAxMHQW5kcm9p +ZDEiMCAGCSqGSIb3DQEJARYTYW5kcm9pZEBhbmRyb2lkLmNvbTCCASAwDQYJKoZI +hvcNAQEBBQADggENADCCAQgCggEBANaTGQTexgskse3HYuDZ2CU+Ps1s6x3i/waM +qOi8qM1r03hupwqnbOYOuw+ZNVn/2T53qUPn6D1LZLjk/qLT5lbx4meoG7+yMLV4 +wgRDvkxyGLhG9SEVhvA4oU6Jwr44f46+z4/Kw9oe4zDJ6pPQp8PcSvNQIg1QCAcy +4ICXF+5qBTNZ5qaU7Cyz8oSgpGbIepTYOzEJOmc3Li9kEsBubULxWBjf/gOBzAzU +RNps3cO4JFgZSAGzJWQTT7/emMkod0jb9WdqVA2BVMi7yge54kdVMxHEa5r3b97s +zI5p58ii0I54JiCUP5lyfTwE/nKZHZnfm644oLIXf6MdW2r+6R8CAQOjgfwwgfkw +HQYDVR0OBBYEFEhZAFY9JyxGrhGGBaR0GawJyowRMIHJBgNVHSMEgcEwgb6AFEhZ +AFY9JyxGrhGGBaR0GawJyowRoYGapIGXMIGUMQswCQYDVQQGEwJVUzETMBEGA1UE +CBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNTW91bnRhaW4gVmlldzEQMA4GA1UEChMH +QW5kcm9pZDEQMA4GA1UECxMHQW5kcm9pZDEQMA4GA1UEAxMHQW5kcm9pZDEiMCAG +CSqGSIb3DQEJARYTYW5kcm9pZEBhbmRyb2lkLmNvbYIJAJNurL4H8gHfMAwGA1Ud +EwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAHqvlozrUMRBBVEY0NqrrwFbinZa +J6cVosK0TyIUFf/azgMJWr+kLfcHCHJsIGnlw27drgQAvilFLAhLwn62oX6snb4Y +LCBOsVMR9FXYJLZW2+TcIkCRLXWG/oiVHQGo/rWuWkJgU134NDEFJCJGjDbiLCpe ++ZTWHdcwauTJ9pUbo8EvHRkU3cYfGmLaLfgn9gP+pWA7LFQNvXwBnDa6sppCccEX +31I828XzgXpJ4O+mDL1/dBd+ek8ZPUP0IgdyZm5MTYPhvVqGCHzzTy3sIeJFymwr +sBbmg2OAUNLEMO6nwmocSdN2ClirfxqCzJOLSDE4QyS9BAH6EhY6UFcOaE0= +-----END CERTIFICATE----- diff --git a/target/product/sim.mk b/target/product/sim.mk new file mode 100644 index 0000000..7b27495 --- /dev/null +++ b/target/product/sim.mk @@ -0,0 +1,9 @@ +PRODUCT_PACKAGES := \ + IM + +$(call inherit-product, $(SRC_TARGET_DIR)/product/generic_with_google.mk) + +# Overrides +PRODUCT_NAME := sim +PRODUCT_DEVICE := sim +PRODUCT_LOCALES := en_US |