github.com/westcoastroms/westcoastroms-build@v0.0.0-20190928114312-2350e5a73030/build/make/CleanSpec.mk (about)

     1  # Copyright (C) 2007 The Android Open Source Project
     2  #
     3  # Licensed under the Apache License, Version 2.0 (the "License");
     4  # you may not use this file except in compliance with the License.
     5  # You may obtain a copy of the License at
     6  #
     7  #      http://www.apache.org/licenses/LICENSE-2.0
     8  #
     9  # Unless required by applicable law or agreed to in writing, software
    10  # distributed under the License is distributed on an "AS IS" BASIS,
    11  # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    12  # See the License for the specific language governing permissions and
    13  # limitations under the License.
    14  #
    15  
    16  # If you don't need to do a full clean build but would like to touch
    17  # a file or delete some intermediate files, add a clean step to the end
    18  # of the list.  These steps will only be run once, if they haven't been
    19  # run before.
    20  #
    21  # E.g.:
    22  #     $(call add-clean-step, touch -c external/sqlite/sqlite3.h)
    23  #     $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/STATIC_LIBRARIES/libz_intermediates)
    24  #
    25  # Always use "touch -c" and "rm -f" or "rm -rf" to gracefully deal with
    26  # files that are missing or have been moved.
    27  #
    28  # Use $(PRODUCT_OUT) to get to the "out/target/product/blah/" directory.
    29  # Use $(OUT_DIR) to refer to the "out" directory.
    30  #
    31  # If you need to re-do something that's already mentioned, just copy
    32  # the command and add it to the bottom of the list.  E.g., if a change
    33  # that you made last week required touching a file and a change you
    34  # made today requires touching the same file, just copy the old
    35  # touch step and add it to the end of the list.
    36  #
    37  # ************************************************
    38  # NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST
    39  # ************************************************
    40  
    41  # For example:
    42  #$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/APPS/AndroidTests_intermediates)
    43  #$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/JAVA_LIBRARIES/core_intermediates)
    44  #$(call add-clean-step, find $(OUT_DIR) -type f -name "IGTalkSession*" -print0 | xargs -0 rm -f)
    45  #$(call add-clean-step, rm -rf $(PRODUCT_OUT)/data/*)
    46  
    47  $(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/APPS)
    48  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/APPS)
    49  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system)
    50  
    51  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/SHARED_LIBRARIES/libmediaplayerservice_intermediates)
    52  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/SHARED_LIBRARIES/libmedia_jni_intermediates)
    53  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/SHARED_LIBRARIES/libstagefright_omx_intermediates)
    54  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
    55  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/default.prop)
    56  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/recovery/root/default.prop)
    57  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/vendor)
    58  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/android-info.txt)
    59  $(call add-clean-step, find $(PRODUCT_OUT) -name "*.apk" | xargs rm)
    60  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/APPS/*)
    61  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/*)
    62  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/data/app/*)
    63  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
    64  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/APPS/*)
    65  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
    66  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/SHARED_LIBRARIES/*/LINKED)
    67  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
    68  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/APPS/*)
    69  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
    70  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/*)
    71  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/APPS/*)
    72  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
    73  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/*)
    74  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/lib/*.so)
    75  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/lib/*.so)
    76  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/symbols/system/lib/*.so)
    77  $(call add-clean-step, rm -rf $(HOST_OUT_EXECUTABLES)/iself)
    78  $(call add-clean-step, rm -rf $(HOST_OUT_EXECUTABLES)/lsd)
    79  $(call add-clean-step, rm -rf $(HOST_OUT_EXECUTABLES)/apriori)
    80  $(call add-clean-step, rm -rf $(HOST_OUT_EXECUTABLES)/isprelinked)
    81  $(call add-clean-step, rm -rf $(HOST_OUT_EXECUTABLES)/soslim)
    82  
    83  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/lib/*.so)
    84  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/lib/*.so)
    85  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/symbols/system/lib/*.so)
    86  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/*)
    87  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/APPS/*)
    88  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
    89  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/YouTube*)
    90  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/*)
    91  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/APPS/*)
    92  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
    93  
    94  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/SHARED_LIBRARIES/libstagefright_intermediates)
    95  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/SHARED_LIBRARIES/libstagefright_omx_intermediates)
    96  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/SHARED_LIBRARIES/librtp_jni_intermediates)
    97  
    98  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/android-info.txt)
    99  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/APPS/*)
   100  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/*)
   101  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/data/app/*)
   102  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   103  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/JAVA_LIBRARIES/*)
   104  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/framework/*)
   105  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   106  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/*)
   107  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/APPS/*)
   108  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   109  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/SHARED_LIBRARIES/libbcinfo_intermediates)
   110  
   111  # ICS MR2!!!!!!!!!!!!
   112  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/*)
   113  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/APPS/*)
   114  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   115  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/SHARED_LIBRARIES/libbcinfo_intermediates)
   116  
   117  # WAIT, I MEAN JELLY BEAN!!!!!!!!!!!!
   118  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/*)
   119  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/APPS/*)
   120  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   121  
   122  # Changing where ro.carrier value is instantiated for system/build.prop
   123  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   124  
   125  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/APPS/*)
   126  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/*)
   127  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/data/app/*)
   128  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   129  
   130  # Now we switched to build against Mac OS X SDK 10.6
   131  $(call add-clean-step, rm -rf $(OUT_DIR)/host/darwin-x86/obj)
   132  
   133  $(call add-clean-step, rm -f $(OUT_DIR)/versions_checked.mk)
   134  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/*)
   135  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/APPS/*)
   136  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   137  
   138  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/STATIC_LIBRARIES)
   139  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/SHARED_LIBRARIES)
   140  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/EXECUTABLES)
   141  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/lib/*.o)
   142  
   143  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/STATIC_LIBRARIES)
   144  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/SHARED_LIBRARIES)
   145  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/EXECUTABLES)
   146  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/lib/*.o)
   147  
   148  # JB MR2!!!!!!!  AND *NO*, THIS WILL NOT BE K-WHATEVER.
   149  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   150  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/*)
   151  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/APPS/*)
   152  
   153  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   154  
   155  # Start of "K" development!
   156  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   157  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/*)
   158  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/APPS/*)
   159  
   160  # GCC 4.7
   161  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/STATIC_LIBRARIES)
   162  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/SHARED_LIBRARIES)
   163  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/EXECUTABLES)
   164  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/lib/*.o)
   165  
   166  # Wait, back to some JB development!
   167  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   168  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/*)
   169  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/APPS/*)
   170  
   171  # And on to KLP...
   172  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   173  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/*)
   174  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/APPS/*)
   175  
   176  # KLP now based off API 18.
   177  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   178  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/*)
   179  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/APPS/*)
   180  
   181  # Clean up around the /system/app -> /system/priv-app migration
   182  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/*)
   183  
   184  # Clean up old location of generated Java files from aidl
   185  $(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/JAVA_LIBRARIES/framework_intermediates/src)
   186  
   187  # Clean up ApplicationsProvider which is being removed.
   188  $(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/APPS/ApplicationsProvider_intermediates)
   189  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/priv-app/ApplicationsProvider.apk)
   190  
   191  # Clean up Moto OMA DM client which isn't ready yet.
   192  $(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/JAVA_LIBRARIES/com.android.omadm.plugin.dev_intermediates)
   193  $(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/JAVA_LIBRARIES/com.android.omadm.plugin.diagmon_intermediates)
   194  $(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/JAVA_LIBRARIES/com.android.omadm.pluginhelper_intermediates)
   195  $(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/JAVA_LIBRARIES/com.android.omadm.plugin_intermediates)
   196  $(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/JAVA_LIBRARIES/com.android.omadm.service.api_intermediates)
   197  $(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/APPS/DMService_intermediates)
   198  $(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/APPS/SprintDM_intermediates)
   199  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/priv-app/DMService.apk)
   200  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/SprintDM.apk)
   201  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/etc/omadm)
   202  
   203  # GCC 4.8
   204  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/STATIC_LIBRARIES)
   205  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/SHARED_LIBRARIES)
   206  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/EXECUTABLES)
   207  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/lib/*.o)
   208  
   209  # KLP I mean KitKat now API 19.
   210  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   211  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/*)
   212  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/APPS/*)
   213  
   214  # 4.4.1
   215  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   216  
   217  # 4.4.2
   218  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   219  
   220  # "L" and beyond.
   221  # Make libart the default runtime
   222  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   223  
   224  # Rename persist.sys.dalvik.vm.lib to allow new default
   225  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   226  
   227  # KKWT development
   228  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   229  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/*)
   230  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/APPS/*)
   231  
   232  # L development
   233  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   234  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/*)
   235  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/APPS/*)
   236  
   237  # L development
   238  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   239  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/*)
   240  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/APPS/*)
   241  
   242  # Add ro.product.cpu.abilist{32,64} to build.prop.
   243  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   244  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   245  
   246  # Unset TARGET_PREFER_32_BIT_APPS for 64 bit targets.
   247  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   248  
   249  # Adding dalvik.vm.dex2oat-flags to eng builds
   250  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   251  
   252  # Unset TARGET_PREFER_32_BIT_APPS for 64 bit targets.
   253  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   254  
   255  # Switching the x86 emulator over to a 64 bit primary zygote.
   256  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   257  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/default.prop)
   258  
   259  # Rename persist.sys.dalvik.vm.lib.1 to allow new default
   260  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   261  
   262  # Switching PRODUCT_RUNTIMES default for some devices
   263  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   264  
   265  # Switching to 32-bit-by-default host multilib build
   266  $(call add-clean-step, rm -rf $(HOST_OUT_INTERMEDIATES))
   267  
   268  # KKWT has become API 20
   269  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   270  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/*)
   271  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/APPS/*)
   272  
   273  # ims-common.jar added to BOOTCLASSPATH
   274  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/ETC/init.environ.rc_intermediates)
   275  
   276  # Change ro.zygote for core_64_bit.mk from zygote32_64 to zygote64_32
   277  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/default.prop)
   278  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/recovery/root/default.prop)
   279  
   280  # Adding dalvik.vm.dex2oat-Xms, dalvik.vm.dex2oat-Xmx
   281  # dalvik.vm.image-dex2oat-Xms, and dalvik.vm.image-dex2oat-Xmx
   282  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/default.prop)
   283  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/recovery/root/default.prop)
   284  
   285  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system)
   286  
   287  # Switch host builds to Clang by default
   288  $(call add-clean-step, rm -rf $(OUT_DIR)/host)
   289  
   290  # Adding dalvik.vm.dex2oat-filter
   291  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   292  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/default.prop)
   293  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/recovery/root/default.prop)
   294  
   295  # API 21?
   296  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   297  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/*)
   298  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/APPS/*)
   299  
   300  # API 21!
   301  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   302  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/*)
   303  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/APPS/*)
   304  
   305  # API 22!
   306  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   307  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/*)
   308  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/APPS/*)
   309  
   310  # Move to libc++ as the default STL.
   311  $(call add-clean-step, rm -rf $(OUT_DIR))
   312  
   313  # dex2oat instruction-set changes
   314  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   315  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/default.prop)
   316  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/recovery/root/default.prop)
   317  
   318  # Make GNU++11 the default standard version. This requires a cleanspec because
   319  # char16_t/char32_t will be real types now instead of typedefs, which means
   320  # an ABI change since the names will mangle differently.
   321  $(call add-clean-step, rm -rf $(OUT_DIR))
   322  
   323  # 5.1!
   324  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   325  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/*)
   326  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/APPS/*)
   327  
   328  # Remove ro.product.locale.language/country and add ro.product.locale
   329  # instead.
   330  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   331  
   332  # On to MNC
   333  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   334  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/*)
   335  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/APPS/*)
   336  
   337  # Adding dalvik.vm.usejit
   338  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   339  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/default.prop)
   340  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/recovery/root/default.prop)
   341  
   342  # Rename dalvik.vm.usejit to debug.dalvik.vm.usejit
   343  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   344  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/default.prop)
   345  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/recovery/root/default.prop)
   346  
   347  # Revert rename dalvik.vm.usejit to debug.dalvik.vm.usejit
   348  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   349  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/default.prop)
   350  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/recovery/root/default.prop)
   351  
   352  # Change from interpret-only to verify-at-runtime.
   353  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   354  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/default.prop)
   355  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/recovery/root/default.prop)
   356  
   357  # New York, New York!
   358  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   359  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/*)
   360  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/APPS/*)
   361  
   362  # 23 is becoming alive!!!
   363  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   364  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/*)
   365  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/APPS/*)
   366  
   367  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   368  
   369  # Change PLATFORM_VERSION from NYC to N
   370  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
   371  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/*)
   372  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/APPS/*)
   373  
   374  # $(PRODUCT_OUT)/recovery/root/sdcard goes from symlink to folder.
   375  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/recovery/root/sdcard)
   376  
   377  # Add BOARD_USES_SYSTEM_OTHER_ODEX
   378  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/*)
   379  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/priv-app/*)
   380  
   381  $(call add-clean-step, rm -rf $(TARGET_OUT_COMMON_INTERMEDIATES)/APPS/previous_overlays.txt)
   382  $(call add-clean-step, rm -rf $(TARGET_OUT_COMMON_INTERMEDIATES)/APPS/current_packages.txt)
   383  
   384  $(call add-clean-step, rm -rf $(HOST_OUT_INTERMEDIATES)/include)
   385  
   386  $(call add-clean-step, rm -rf $(HOST_OUT_COMMON_INTERMEDIATES)/APPS/*_intermediates/src)
   387  $(call add-clean-step, rm -rf $(HOST_OUT_COMMON_INTERMEDIATES)/JAVA_LIBRARIES/*_intermediates/src)
   388  $(call add-clean-step, rm -rf $(TARGET_OUT_COMMON_INTERMEDIATES)/APPS/*_intermediates/src)
   389  $(call add-clean-step, rm -rf $(TARGET_OUT_COMMON_INTERMEDIATES)/JAVA_LIBRARIES/*_intermediates/src)
   390  $(call add-clean-step, rm -rf $(TARGET_OUT_COMMON_INTERMEDIATES)/previous_gen_java_config.mk)
   391  $(call add-clean-step, rm -rf $(TARGET_OUT_COMMON_INTERMEDIATES)/current_gen_java_config.mk)
   392  
   393  $(call add-clean-step, rm -rf $(TARGET_OUT_COMMON_INTERMEDIATES)/JAVA_LIBRARIES/*/package-res.apk)
   394  $(call add-clean-step, rm -rf $(TARGET_OUT_INTERMEDIATES)/APPS/*/package-res.apk)
   395  $(call add-clean-step, rm -rf $(TARGET_OUT_COMMON_INTERMEDIATES)/APPS/*_intermediates/src)
   396  $(call add-clean-step, rm -rf $(TARGET_OUT_COMMON_INTERMEDIATES)/JAVA_LIBRARIES/*_intermediates/src)
   397  
   398  $(call add-clean-step, rm -rf $(HOST_OUT_TESTCASES))
   399  $(call add-clean-step, rm -rf $(TARGET_OUT_TESTCASES))
   400  
   401  $(call add-clean-step, rm -rf $(TARGET_OUT_ETC)/init)
   402  
   403  # Libraries are moved from {system|vendor}/lib to ./lib/framework, ./lib/vndk, etc.
   404  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/lib*)
   405  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/vendor/lib*)
   406  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/vendor/lib*)
   407  
   408  # Revert that move
   409  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/lib*)
   410  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/vendor/lib*)
   411  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/vendor/lib*)
   412  
   413  # Sanitized libraries now live in a different location.
   414  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/data/lib*)
   415  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/data/vendor/lib*)
   416  
   417  # Soong module variant change, remove obsolete intermediates
   418  $(call add-clean-step, rm -rf $(OUT_DIR)/soong/.intermediates)
   419  
   420  # Version checking moving to Soong
   421  $(call add-clean-step, rm -rf $(OUT_DIR)/versions_checked.mk)
   422  
   423  # Vendor tests were being installed into /vendor/bin accidentally
   424  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/vendor/nativetest*)
   425  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/vendor/nativetest*)
   426  
   427  # Jack is no longer the default compiler, remove the intermediates
   428  $(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/*/*/classes*.jack)
   429  $(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/*/*/jack*)
   430  
   431  # Move adbd from $(PRODUCT_OUT)/root/sbin to $(PRODUCT_OUT)/system/bin
   432  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/sbin/adbd)
   433  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/symbols/sbin/adbd)
   434  
   435  # Soong linux -> linux_glibc rename
   436  $(call add-clean-step, find $(SOONG_OUT_DIR)/.intermediates -name 'linux_x86*' | xargs rm -rf)
   437  $(call add-clean-step, find $(SOONG_OUT_DIR)/.intermediates -name 'linux_common*' | xargs rm -rf)
   438  
   439  # Remove old aidl/logtags files that may be in the generated source directory
   440  $(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/*/*_intermediates/src)
   441  $(call add-clean-step, rm -f $(OUT_DIR)/target/common/obj/*/*_intermediates/java-source-list)
   442  $(call add-clean-step, rm -rf $(OUT_DIR)/host/common/obj/*/*_intermediates/src)
   443  $(call add-clean-step, rm -f $(OUT_DIR)/host/common/obj/*/*_intermediates/java-source-list)
   444  
   445  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/APPS/*/flat-res)
   446  
   447  # Remove old VNDK directories without version
   448  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/lib/vndk)
   449  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/lib/vndk-sp)
   450  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/lib64/vndk)
   451  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/lib64/vndk-sp)
   452  
   453  # Remove old dex output directories
   454  $(call add-clean-step, rm -rf $(TARGET_OUT_COMMON_INTERMEDIATES)/*/*_intermediates/with-local/)
   455  $(call add-clean-step, rm -rf $(TARGET_OUT_COMMON_INTERMEDIATES)/*/*_intermediates/no-local/)
   456  $(call add-clean-step, rm -rf $(HOST_OUT_COMMON_INTERMEDIATES)/*/*_intermediates/with-local/)
   457  $(call add-clean-step, rm -rf $(HOST_OUT_COMMON_INTERMEDIATES)/*/*_intermediates/no-local/)
   458  
   459  # Remove legacy VINTF metadata files
   460  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/manifest.xml)
   461  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/vendor/manifest.xml)
   462  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/vendor/manifest.xml)
   463  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/vendor/compatibility_matrix.xml)
   464  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/vendor/compatibility_matrix.xml)
   465  
   466  # Remove DisplayCutoutEmulation overlays
   467  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/vendor/overlay/DisplayCutoutEmulationWide)
   468  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/vendor/overlay/DisplayCutoutEmulationNarrow)
   469  
   470  # Remove obsolete intermedates src files
   471  $(call add-clean-step, rm -rf $(TARGET_OUT_COMMON_INTERMEDIATES)/*/*_intermediates/src/RenderScript.stamp*)
   472  $(call add-clean-step, rm -rf $(TARGET_OUT_COMMON_INTERMEDIATES)/APPS/*_intermediates/src)
   473  $(call add-clean-step, rm -rf $(TARGET_OUT_COMMON_INTERMEDIATES)/JAVA_LIBRARIES/*_intermediates/src)
   474  $(call add-clean-step, rm -rf $(TARGET_OUT_COMMON_INTERMEDIATES)/APPS/*_intermediates/java-source-list)
   475  $(call add-clean-step, rm -rf $(TARGET_OUT_COMMON_INTERMEDIATES)/JAVA_LIBRARIES/*_intermediates/java-source-list)
   476  $(call add-clean-step, rm -rf $(OUT_DOCS)/*-timestamp)
   477  
   478  $(call add-clean-step, rm -rf $(TARGET_COMMON_OUT_ROOT)/obj_asan/APPS/*_intermediates/src)
   479  $(call add-clean-step, rm -rf $(TARGET_COMMON_OUT_ROOT)/obj_asan/JAVA_LIBRARIES/*_intermediates/src)
   480  $(call add-clean-step, rm -rf $(TARGET_COMMON_OUT_ROOT)/obj_asan/APPS/*_intermediates/java-source-list)
   481  $(call add-clean-step, rm -rf $(TARGET_COMMON_OUT_ROOT)/obj_asan/JAVA_LIBRARIES/*_intermediates/java-source-list)
   482  
   483  # Remove stale init.noenforce.rc
   484  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/etc/init/gsi/init.noenforce.rc)
   485  
   486  # Clean up Launcher3 which has been replaced with Launcher3QuickStep
   487  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/Launcher3)
   488  $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/priv-app/Launcher3)
   489  $(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/APPS/Launcher3_intermediates)
   490  
   491  # ************************************************
   492  # NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST
   493  # ************************************************