From 4074f2377c21ee102916c2f954978fc5eba341cd Mon Sep 17 00:00:00 2001 From: Jean-Baptiste Queru Date: Fri, 3 Sep 2010 16:32:58 -0700 Subject: [PATCH] Warn when new modules are found that use user tags Change-Id: I49369cc1596f269e0964f0a6a88bcc7152209bde --- core/base_rules.mk | 6 + core/definitions.mk | 3 + core/user_tags.mk | 575 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 584 insertions(+) create mode 100644 core/user_tags.mk diff --git a/core/base_rules.mk b/core/base_rules.mk index 51987a2d7..e1575fa86 100644 --- a/core/base_rules.mk +++ b/core/base_rules.mk @@ -69,6 +69,12 @@ ifneq ($(filter-out user debug eng tests optional samples shell_ash shell_mksh,$ $(warning unusual tags $(LOCAL_MODULE_TAGS) on $(LOCAL_MODULE) at $(LOCAL_PATH)) endif +ifneq ($(filter $(LOCAL_MODULE_TAGS),user),) + ifeq ($(filter $(GRANDFATHERED_USER_MODULES),$(LOCAL_MODULE)),) + $(warning using user tag on $(LOCAL_MODULE) at $(LOCAL_PATH)) + endif +endif + # Add implicit tags. # # If the local directory or one of its parents contains a MODULE_LICENSE_GPL diff --git a/core/definitions.mk b/core/definitions.mk index 74c956586..7c69ce11e 100644 --- a/core/definitions.mk +++ b/core/definitions.mk @@ -1848,6 +1848,9 @@ endef # when requested. include $(BUILD_SYSTEM)/distdir.mk +# ----------------------------------------------------------------- +# The modules allowed to use a user tag +include $(BUILD_SYSTEM)/user_tags.mk # broken: # $(foreach file,$^,$(if $(findstring,.a,$(suffix $file)),-l$(file),$(file))) diff --git a/core/user_tags.mk b/core/user_tags.mk new file mode 100644 index 000000000..1cefd789a --- /dev/null +++ b/core/user_tags.mk @@ -0,0 +1,575 @@ +# +# Copyright (C) 2010 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 is the list of modules grandfathered to use a user tag + +# DO NOT ADD ANY NEW MODULE TO THIS FILE +# +# user modules are hard to control and audit and we don't want +# to add any new such module in the system + +GRANDFATHERED_USER_MODULES := + +-include vendor/google/user_tags.mk + +GRANDFATHERED_USER_MODULES += \ + 01-test \ + 20-dns.conf \ + 95-configured \ + aapt \ + acp \ + adb \ + adbd \ + aidl \ + am \ + android \ + android-common \ + android-common-carousel \ + android.policy \ + androidprefs \ + android.test.runner \ + ant \ + antlr-2.7.7 \ + anttasks \ + apicheck \ + apkcheck \ + applypatch \ + app_process \ + apriori \ + archquery \ + asm-3.1 \ + atree \ + audio \ + badblocks \ + badblocks_host \ + bb2sym \ + bb_dump \ + bbprof \ + bcc \ + bison \ + bluetoothd \ + bmgr \ + bootanimation \ + bouncycastle \ + brcm_patchram_plus \ + bugreport \ + cfassembler \ + check_stack \ + check_trace \ + cmu2nuance \ + com.android.inputmethod.pinyin.lib \ + com.android.phone.common \ + com.android.vcard \ + commons-compress-1.0 \ + copybit.qsd8k \ + copybit.s5pc110 \ + core \ + core-junit \ + coverage \ + cpufeatures \ + create_test_dmtrace \ + cts \ + CtsAppSecurityTests \ + cts-dalvik-buildutil \ + dalvikvm \ + dasm \ + dbus-daemon \ + ddmlib \ + ddmlib-prebuilt \ + ddmlibTests \ + ddms \ + ddmuilib \ + debuggerd \ + descGen \ + dexdeps \ + dexdump \ + dexlist \ + dexopt \ + dex-tools \ + dhcpcd \ + dhcpcd.conf \ + dhcpcd-run-hooks \ + dictTest \ + dmtracedump \ + dnsmasq \ + doclava \ + draw9patch \ + dumpeventlog \ + dumpkey \ + dump_regions \ + dumpstate \ + dumpsys \ + dvz \ + dx \ + dx-tests \ + e2fsck \ + e2fsck_host \ + easymock \ + easymocklib \ + edify \ + elftree \ + emmalib \ + emulator \ + emulator-arm \ + emulator-core \ + emulator-elff \ + emulator-hw \ + emulator-memcheck \ + emulator-tcg \ + emulator-ui \ + etc1tool \ + eventanalyzer \ + exc_dump \ + ext \ + fastboot \ + framework \ + FrameworkCoreHostTests \ + fsck_msdos \ + fs_get_stats \ + fw_bcm4329_apsta.bin \ + fw_bcm4329.bin \ + genext2fs \ + gps.mahimahi \ + gralloc.default \ + gralloc.qsd8k \ + groovy-all-1.7.0 \ + grxmlcompile \ + guava \ + guavalib \ + gzip \ + hciattach \ + hierarchyviewer \ + hierarchyviewer1 \ + hierarchyviewer2 \ + hierarchyviewerlib \ + hist_trace \ + hosttestlib \ + hprof-conv \ + icudata \ + idegen \ + ime \ + init \ + input \ + installd \ + iptables \ + ip-up-vpn \ + iself \ + isprelinked \ + jarjar \ + jasmin \ + jasmin.jar \ + javax.obex \ + jcommon-1.0.12 \ + jdiff \ + jdwpspy \ + jfreechart-1.0.9 \ + jfreechart-1.0.9-swt \ + jsilver \ + jsr305 \ + jsr305lib \ + junit \ + jython \ + kcm \ + keystore \ + kxml2-2.3.0 \ + layoutlib \ + layoutlib_api \ + layoutlib_create \ + layoutlib_utils \ + layoutopt \ + liba2dp \ + libabi \ + libandroid \ + libandroid_runtime \ + libandroid_servers \ + libarity \ + libastl \ + libastl_host \ + libaudio \ + libaudioeffect_jni \ + libaudioflinger \ + libaudiointerface \ + libaudiopolicy \ + libaudiopolicybase \ + libbcc \ + libbinder \ + libbluedroid \ + libbluetooth \ + libbluetoothd \ + libbuiltinplugin \ + libbundlewrapper \ + libbz \ + libc \ + libcamera_client \ + libcameraservice \ + libcamerastub \ + libc_common \ + libchromium_net \ + libclangAnalysis \ + libclangAST \ + libclangBasic \ + libclangCodeGen \ + libclangIndex \ + libclangLex \ + libclangParse \ + libclangSema \ + libc_nomalloc \ + libcrypto \ + libctest \ + libcutils \ + libdb \ + libdbus \ + libdex \ + libdiskconfig \ + libdiskconfig_host \ + libdl \ + libdrm1 \ + libdrm1_jni \ + libdvm \ + libebl \ + libebl_arm \ + libebl_sh \ + libedify \ + libeffects \ + libEGL \ + libelf \ + libelfcopy \ + libESR_Portable \ + libESR_Shared \ + libETC1 \ + libexif \ + libexpat \ + libext \ + libext2_blkid \ + libext2_blkid_host \ + libext2_com_err \ + libext2_com_err_host \ + libext2_e2p \ + libext2_e2p_host \ + libext2fs \ + libext2fs_host \ + libext2_profile \ + libext2_profile_host \ + libext2_uuid \ + libext2_uuid_host \ + libfdlibm \ + libFFTEm \ + libfst \ + libft2 \ + libgdbus_static \ + libgif \ + libGLES_android \ + libGLESv1_CM \ + libGLESv2 \ + libglib \ + libgui \ + libhardware \ + libhardware_legacy \ + libhost \ + libhyphenation \ + libicui18n \ + libicuuc \ + libiprouteutil \ + libiptc \ + libjavacore \ + libjnigraphics \ + libjni_latinime \ + libjni_pinyinime \ + libjpeg \ + liblinenoise \ + libLLVMAnalysis \ + libLLVMARMAsmPrinter \ + libLLVMARMCodeGen \ + libLLVMARMDisassembler \ + libLLVMARMInfo \ + libLLVMAsmParser \ + libLLVMAsmPrinter \ + libLLVMBitReader \ + libLLVMBitWriter \ + libLLVMCodeGen \ + libLLVMCore \ + libLLVMInstCombine \ + libLLVMInstrumentation \ + libLLVMipa \ + libLLVMipo \ + libLLVMJIT \ + libLLVMLinker \ + libLLVMMC \ + libLLVMMCParser \ + libLLVMScalarOpts \ + libLLVMSelectionDAG \ + libLLVMSupport \ + libLLVMSystem \ + libLLVMTarget \ + libLLVMTransformUtils \ + libLLVMX86AsmPrinter \ + libLLVMX86CodeGen \ + libLLVMX86Disassembler \ + libLLVMX86Info \ + libloc_api-rpc \ + liblog \ + libm \ + libmedia \ + libmedia_jni \ + libmediaplayerservice \ + libmincrypt \ + libminelf \ + libminui \ + libminzip \ + libmtdutils \ + libmtp \ + libmusicbundle \ + libnativehelper \ + libnetlink \ + libnetutils \ + libop \ + libOpenSLES \ + libopensles_helper \ + libOpenSLESUT \ + libpcap \ + libpixelflinger \ + libpixelflinger_static \ + libpng \ + libpopt \ + libpower \ + libprotobuf-cpp-2.3.0-full \ + libprotobuf-cpp-2.3.0-lite \ + libprotobuf-java-2.3.0-lite \ + libprotobuf-java-2.3.0-micro \ + librecovery_ui_htc \ + libreference-ril \ + libreverb \ + libreverbwrapper \ + libril \ + librilproto-java \ + librpc \ + librtp_jni \ + libsafe_iop \ + libSDL \ + libSDLmain \ + libsensorservice \ + libskia \ + libskiagl \ + libsonivox \ + libsoundpool \ + libspeex \ + libsqlite \ + libsqlite3_android \ + libsqlite_jni \ + libSR_AcousticModels \ + libSR_AcousticState \ + libSR_AudioIn \ + libSR_Core \ + libsrec_jni \ + libSR_EventLog \ + libSR_G2P \ + libSR_Grammar \ + libSR_Nametag \ + libSR_Recognizer \ + libSR_Semproc \ + libSR_Session \ + libSR_Vocabulary \ + libssl \ + libstagefright \ + libstagefright_aacdec \ + libstagefright_aacenc \ + libstagefright_amrnb_common \ + libstagefright_amrnbdec \ + libstagefright_amrnbenc \ + libstagefright_amrwbdec \ + libstagefright_amrwbenc \ + libstagefright_avc_common \ + libstagefright_avcdec \ + libstagefright_avcenc \ + libstagefright_color_conversion \ + libstagefright_enc_common \ + libstagefright_foundation \ + libstagefright_g711dec \ + libstagefright_httplive \ + libstagefrighthw \ + libstagefright_id3 \ + libstagefright_m4vh263dec \ + libstagefright_m4vh263enc \ + libstagefright_matroska \ + libstagefright_mp3dec \ + libstagefright_mpeg2ts \ + libstagefright_omx \ + libstagefright_rtsp \ + libstagefright_vorbisdec \ + libstagefright_vpxdec \ + libstagefright_yuv \ + libstdc++ \ + libstlport \ + libstlport_static \ + libstorage \ + libsurfaceflinger \ + libsurfaceflinger_client \ + libsvoxpico \ + libsystem_server \ + libsysutils \ + libthread_db \ + libtinyxml \ + libtomcrypt \ + libtommath \ + libttspico \ + libttssynthproxy \ + libui \ + libunz \ + libusbhost \ + libutil \ + libutils \ + libv8 \ + libvisualizer \ + libvorbisidec \ + libvpx \ + libwebcore \ + libwpa_client \ + libxml2 \ + libxslt \ + libz \ + libzipfile \ + lights.kraken \ + lights.qsd8k \ + line_endings \ + linker \ + llvm-rs-link \ + localize \ + logcat \ + logwrapper \ + lsd \ + mahimahi-keypad.kcm \ + make_cfst \ + makedict \ + make_ext4fs \ + make_g2g \ + makekeycodes \ + make_ve_grammar \ + mediaserver \ + minigzip \ + mkbootfs \ + mkbootimg \ + mke2fs \ + mke2fs_host \ + mksdcard \ + mksnapshot \ + mkstubs \ + mkuserimg.sh \ + mkyaffs2image \ + mockrilcontroller \ + monkey \ + monkeyrunner \ + MonkeyRunnerTest \ + mtp \ + mtpd \ + ndc \ + netcfg \ + netd \ + network \ + ninepatch \ + oauth \ + obbtool \ + omx_tests \ + org.eclipse.core.commands_3.4.0.I20080509-2000 \ + org.eclipse.equinox.common_3.4.0.v20080421-2006 \ + org.eclipse.jface_3.4.2.M20090107-0800 \ + org-netbeans-api-visual \ + org-openide-util \ + osgi \ + pand \ + parseStringTest \ + ping \ + platform.xml \ + pm \ + post_trace \ + pppd \ + preload \ + profile_pid \ + profile_trace \ + q2dm \ + q2g \ + qemu-android \ + qwerty2.kcm \ + qwerty.kcm \ + racoon \ + read_addr \ + read_method \ + read_pid \ + read_trace \ + resize2fs \ + resize2fs_host \ + rgb2565 \ + rild \ + rsg-generator \ + run-as \ + schedtest \ + screenshot \ + screenshot2 \ + sdcard \ + sdklib \ + sdkmanager \ + sdkstats \ + sdkuilib \ + sdk_v4 \ + sdk_v5 \ + sdk_v6 \ + sdk_v7 \ + sdk_v8 \ + sdptool \ + service \ + servicemanager \ + services \ + sig \ + sig-check \ + sig-create \ + signapk \ + signature-tools \ + simg2img \ + slang \ + soslim \ + spec-progress \ + sqlite3 \ + sqlite-jdbc \ + stack_dump \ + stingray-keypad.kcm \ + stringtemplate \ + surfaceflinger \ + svc \ + swing-worker-1.1 \ + swt \ + system_server \ + tblgen \ + tc \ + temp_layoutlib \ + test_g2g \ + test-progress \ + test-progress-new \ + test_swiarb \ + test_zipfile \ + toolbox \ + traceview \ + tune2fs \ + tune2fs_host \ + tuttle2.kcm \ + uix \ + usbtest \ + vdc \ + vm-tests \ + vold \ + wdsclient \ + whisperd \ + wpa_supplicant \ + yuv420sp2rgb \ + zipalign -- 2.11.0