Dees_Troy | 51a0e82 | 2012-09-05 15:24:24 -0400 | [diff] [blame] | 1 | LOCAL_PATH := $(call my-dir) |
| 2 | |
| 3 | RELINK := $(LOCAL_PATH)/relink.sh |
| 4 | |
| 5 | #dummy file to trigger required modules |
| 6 | include $(CLEAR_VARS) |
| 7 | LOCAL_MODULE := teamwin |
| 8 | LOCAL_MODULE_TAGS := eng |
| 9 | LOCAL_MODULE_CLASS := RECOVERY_EXECUTABLES |
| 10 | LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/sbin |
| 11 | |
| 12 | # Manage list |
| 13 | RELINK_SOURCE_FILES += $(TARGET_RECOVERY_ROOT_OUT)/sbin/dump_image |
| 14 | RELINK_SOURCE_FILES += $(TARGET_RECOVERY_ROOT_OUT)/sbin/flash_image |
| 15 | RELINK_SOURCE_FILES += $(TARGET_RECOVERY_ROOT_OUT)/sbin/erase_image |
| 16 | RELINK_SOURCE_FILES += $(TARGET_OUT_OPTIONAL_EXECUTABLES)/busybox |
| 17 | RELINK_SOURCE_FILES += $(TARGET_RECOVERY_ROOT_OUT)/sbin/pigz |
bigbiff bigbiff | 9c75405 | 2013-01-09 09:09:08 -0500 | [diff] [blame] | 18 | RELINK_SOURCE_FILES += $(TARGET_RECOVERY_ROOT_OUT)/sbin/dosfsck |
| 19 | RELINK_SOURCE_FILES += $(TARGET_RECOVERY_ROOT_OUT)/sbin/dosfslabel |
| 20 | RELINK_SOURCE_FILES += $(TARGET_RECOVERY_ROOT_OUT)/sbin/mkdosfs |
Dees_Troy | 51a0e82 | 2012-09-05 15:24:24 -0400 | [diff] [blame] | 21 | RELINK_SOURCE_FILES += $(TARGET_OUT_EXECUTABLES)/e2fsck |
| 22 | RELINK_SOURCE_FILES += $(TARGET_OUT_EXECUTABLES)/mke2fs |
| 23 | RELINK_SOURCE_FILES += $(TARGET_OUT_EXECUTABLES)/tune2fs |
| 24 | RELINK_SOURCE_FILES += $(TARGET_OUT_EXECUTABLES)/linker |
| 25 | RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/libc.so |
| 26 | RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/libcutils.so |
| 27 | RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/libdl.so |
| 28 | RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/libext2_blkid.so |
| 29 | RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/libext2_com_err.so |
| 30 | RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/libext2_e2p.so |
| 31 | RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/libext2fs.so |
| 32 | RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/libext2_profile.so |
| 33 | RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/libext2_uuid.so |
| 34 | RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/liblog.so |
| 35 | RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/libm.so |
| 36 | RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/libstdc++.so |
| 37 | RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/libz.so |
Dees_Troy | 2673cec | 2013-04-02 20:22:16 +0000 | [diff] [blame] | 38 | RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/libminuitwrp.so |
| 39 | RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/libminadbd.so |
| 40 | RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/libminzip.so |
| 41 | RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/libmtdutils.so |
bigbiff bigbiff | 9c75405 | 2013-01-09 09:09:08 -0500 | [diff] [blame] | 42 | RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/libtar.so |
Vojtech Bocek | 7cc278b | 2013-02-24 01:40:19 +0100 | [diff] [blame] | 43 | RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/libblkid.so |
Dees_Troy | 51a0e82 | 2012-09-05 15:24:24 -0400 | [diff] [blame] | 44 | RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/libmmcutils.so |
| 45 | RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/libbmlutils.so |
| 46 | RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/libflashutils.so |
| 47 | RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/libstlport.so |
Vojtech Bocek | 8593234 | 2013-04-01 22:11:33 +0200 | [diff] [blame] | 48 | #RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/libmincrypt.so |
Dees_Troy | a95f55c | 2013-08-17 13:14:43 +0000 | [diff] [blame] | 49 | ifeq ($(TARGET_USERIMAGES_USE_EXT4), true) |
| 50 | RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/libext4_utils.so |
| 51 | endif |
Dees_Troy | 2673cec | 2013-04-02 20:22:16 +0000 | [diff] [blame] | 52 | RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/libaosprecovery.so |
Dees_Troy | 930bf01 | 2013-08-10 22:19:03 +0000 | [diff] [blame] | 53 | RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/libjpeg.so |
Dees Troy | 4bf3b0d | 2013-09-11 19:12:49 +0000 | [diff] [blame^] | 54 | ifeq ($(TWHAVE_SELINUX), true) |
Dees_Troy | f2280ff | 2013-08-06 18:01:12 +0000 | [diff] [blame] | 55 | RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/libselinux.so |
Dees_Troy | e3850a3 | 2013-08-29 18:33:47 +0000 | [diff] [blame] | 56 | ifneq ($(TARGET_USERIMAGES_USE_EXT4), true) |
| 57 | RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/libext4_utils.so |
| 58 | endif |
Dees_Troy | f2280ff | 2013-08-06 18:01:12 +0000 | [diff] [blame] | 59 | endif |
Vojtech Bocek | 7cc278b | 2013-02-24 01:40:19 +0100 | [diff] [blame] | 60 | ifeq ($(BUILD_ID), GINGERBREAD) |
| 61 | TW_NO_EXFAT := true |
| 62 | endif |
Dees_Troy | b05ddee | 2013-01-28 20:24:50 +0000 | [diff] [blame] | 63 | ifneq ($(TW_NO_EXFAT), true) |
bigbiff bigbiff | 9c75405 | 2013-01-09 09:09:08 -0500 | [diff] [blame] | 64 | RELINK_SOURCE_FILES += $(TARGET_RECOVERY_ROOT_OUT)/sbin/exfat-fuse |
Dees_Troy | b05ddee | 2013-01-28 20:24:50 +0000 | [diff] [blame] | 65 | RELINK_SOURCE_FILES += $(TARGET_RECOVERY_ROOT_OUT)/sbin/mkexfatfs |
Vojtech Bocek | 7cc278b | 2013-02-24 01:40:19 +0100 | [diff] [blame] | 66 | RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/libexfat.so |
bigbiff bigbiff | 9c75405 | 2013-01-09 09:09:08 -0500 | [diff] [blame] | 67 | endif |
Dees_Troy | 51a0e82 | 2012-09-05 15:24:24 -0400 | [diff] [blame] | 68 | ifeq ($(TW_INCLUDE_BLOBPACK), true) |
| 69 | RELINK_SOURCE_FILES += $(TARGET_RECOVERY_ROOT_OUT)/sbin/blobpack |
| 70 | endif |
| 71 | ifeq ($(TW_INCLUDE_INJECTTWRP), true) |
| 72 | RELINK_SOURCE_FILES += $(TARGET_RECOVERY_ROOT_OUT)/sbin/injecttwrp |
| 73 | endif |
| 74 | ifeq ($(TW_INCLUDE_DUMLOCK), true) |
| 75 | RELINK_SOURCE_FILES += $(TARGET_RECOVERY_ROOT_OUT)/sbin/htcdumlock |
| 76 | endif |
| 77 | ifeq ($(TW_INCLUDE_CRYPTO), true) |
Dees_Troy | 2673cec | 2013-04-02 20:22:16 +0000 | [diff] [blame] | 78 | RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/libcryptfsics.so |
Dees_Troy | 51a0e82 | 2012-09-05 15:24:24 -0400 | [diff] [blame] | 79 | RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/libcrypto.so |
| 80 | endif |
| 81 | ifeq ($(TW_INCLUDE_JB_CRYPTO), true) |
Dees_Troy | 2673cec | 2013-04-02 20:22:16 +0000 | [diff] [blame] | 82 | RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/libcryptfsjb.so |
Dees_Troy | 51a0e82 | 2012-09-05 15:24:24 -0400 | [diff] [blame] | 83 | RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/libcrypto.so |
| 84 | endif |
Dees_Troy | 38bd760 | 2012-09-14 13:33:53 -0400 | [diff] [blame] | 85 | ifeq ($(TARGET_USERIMAGES_USE_EXT4), true) |
| 86 | RELINK_SOURCE_FILES += $(TARGET_OUT_EXECUTABLES)/make_ext4fs |
| 87 | endif |
Dees_Troy | 4546fe7 | 2013-01-10 14:33:27 +0000 | [diff] [blame] | 88 | ifneq ($(wildcard system/core/libsparse/Android.mk),) |
| 89 | RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/libsparse.so |
| 90 | endif |
Dees_Troy | 83bd483 | 2013-05-04 12:39:56 +0000 | [diff] [blame] | 91 | ifneq ($(TW_EXCLUDE_ENCRYPTED_BACKUPS), true) |
| 92 | RELINK_SOURCE_FILES += $(TARGET_RECOVERY_ROOT_OUT)/sbin/openaes |
| 93 | RELINK_SOURCE_FILES += $(TARGET_OUT_SHARED_LIBRARIES)/libopenaes.so |
| 94 | endif |
Dees_Troy | e501704 | 2013-08-29 16:38:55 +0000 | [diff] [blame] | 95 | ifeq ($(TARGET_USERIMAGES_USE_F2FS), true) |
| 96 | RELINK_SOURCE_FILES += $(TARGET_OUT_EXECUTABLES)/mkfs.f2fs |
| 97 | RELINK_SOURCE_FILES += $(TARGET_OUT_EXECUTABLES)/fsck.f2fs |
| 98 | RELINK_SOURCE_FILES += $(TARGET_OUT_EXECUTABLES)/fibmap.f2fs |
| 99 | endif |
Dees_Troy | 51a0e82 | 2012-09-05 15:24:24 -0400 | [diff] [blame] | 100 | |
| 101 | TWRP_AUTOGEN := $(intermediates)/teamwin |
| 102 | |
| 103 | GEN := $(intermediates)/teamwin |
| 104 | $(GEN): $(RELINK) |
| 105 | $(GEN): $(RELINK_SOURCE_FILES) $(call intermediates-dir-for,EXECUTABLES,recovery)/recovery |
| 106 | $(RELINK) $(TARGET_RECOVERY_ROOT_OUT)/sbin $(RELINK_SOURCE_FILES) |
| 107 | $(RELINK) $(call intermediates-dir-for,EXECUTABLES,recovery) $(call intermediates-dir-for,EXECUTABLES,recovery)/recovery |
| 108 | |
| 109 | LOCAL_GENERATED_SOURCES := $(GEN) |
| 110 | LOCAL_SRC_FILES := teamwin $(GEN) |
| 111 | include $(BUILD_PREBUILT) |
| 112 | |
Dees_Troy | 51a0e82 | 2012-09-05 15:24:24 -0400 | [diff] [blame] | 113 | #fix_permissions |
| 114 | include $(CLEAR_VARS) |
| 115 | LOCAL_MODULE := fix_permissions.sh |
| 116 | LOCAL_MODULE_TAGS := eng |
| 117 | LOCAL_MODULE_CLASS := RECOVERY_EXECUTABLES |
| 118 | LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/sbin |
| 119 | LOCAL_SRC_FILES := $(LOCAL_MODULE) |
| 120 | include $(BUILD_PREBUILT) |
| 121 | |
Dees_Troy | 51a0e82 | 2012-09-05 15:24:24 -0400 | [diff] [blame] | 122 | #mke2fs.conf |
| 123 | include $(CLEAR_VARS) |
| 124 | LOCAL_MODULE := mke2fs.conf |
| 125 | LOCAL_MODULE_TAGS := eng |
| 126 | LOCAL_MODULE_CLASS := RECOVERY_EXECUTABLES |
| 127 | LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/etc |
| 128 | LOCAL_SRC_FILES := $(LOCAL_MODULE) |
| 129 | include $(BUILD_PREBUILT) |
| 130 | |
| 131 | ifeq ($(BOARD_HAS_NO_REAL_SDCARD),) |
| 132 | #parted |
| 133 | include $(CLEAR_VARS) |
| 134 | LOCAL_MODULE := parted |
| 135 | LOCAL_MODULE_TAGS := eng |
| 136 | LOCAL_MODULE_CLASS := RECOVERY_EXECUTABLES |
| 137 | LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/sbin |
| 138 | LOCAL_SRC_FILES := $(LOCAL_MODULE) |
| 139 | include $(BUILD_PREBUILT) |
Dees_Troy | 51a0e82 | 2012-09-05 15:24:24 -0400 | [diff] [blame] | 140 | endif |
| 141 | |
Dees_Troy | 83bd483 | 2013-05-04 12:39:56 +0000 | [diff] [blame] | 142 | # copy license file for OpenAES |
| 143 | ifneq ($(TW_EXCLUDE_ENCRYPTED_BACKUPS), true) |
| 144 | include $(CLEAR_VARS) |
| 145 | LOCAL_MODULE := ../openaes/LICENSE |
| 146 | LOCAL_MODULE_TAGS := eng |
| 147 | LOCAL_MODULE_CLASS := RECOVERY_EXECUTABLES |
| 148 | LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/license/openaes |
| 149 | LOCAL_SRC_FILES := $(LOCAL_MODULE) |
| 150 | include $(BUILD_PREBUILT) |
| 151 | endif |
| 152 | |
Dees_Troy | 51a0e82 | 2012-09-05 15:24:24 -0400 | [diff] [blame] | 153 | ifeq ($(TW_INCLUDE_DUMLOCK), true) |
| 154 | #htcdumlock for /system for dumlock |
| 155 | include $(CLEAR_VARS) |
| 156 | LOCAL_MODULE := htcdumlocksys |
| 157 | LOCAL_MODULE_TAGS := eng |
| 158 | LOCAL_MODULE_CLASS := RECOVERY_EXECUTABLES |
| 159 | LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/res/htcd |
| 160 | LOCAL_SRC_FILES := $(LOCAL_MODULE) |
| 161 | include $(BUILD_PREBUILT) |
| 162 | |
| 163 | #flash_image for /system for dumlock |
| 164 | include $(CLEAR_VARS) |
| 165 | LOCAL_MODULE := flash_imagesys |
| 166 | LOCAL_MODULE_TAGS := eng |
| 167 | LOCAL_MODULE_CLASS := RECOVERY_EXECUTABLES |
| 168 | LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/res/htcd |
| 169 | LOCAL_SRC_FILES := $(LOCAL_MODULE) |
| 170 | include $(BUILD_PREBUILT) |
| 171 | |
| 172 | #dump_image for /system for dumlock |
| 173 | include $(CLEAR_VARS) |
| 174 | LOCAL_MODULE := dump_imagesys |
| 175 | LOCAL_MODULE_TAGS := eng |
| 176 | LOCAL_MODULE_CLASS := RECOVERY_EXECUTABLES |
| 177 | LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/res/htcd |
| 178 | LOCAL_SRC_FILES := $(LOCAL_MODULE) |
| 179 | include $(BUILD_PREBUILT) |
| 180 | |
| 181 | #libbmlutils for /system for dumlock |
| 182 | include $(CLEAR_VARS) |
| 183 | LOCAL_MODULE := libbmlutils.so |
| 184 | LOCAL_MODULE_TAGS := eng |
| 185 | LOCAL_MODULE_CLASS := RECOVERY_EXECUTABLES |
| 186 | LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/res/htcd |
| 187 | LOCAL_SRC_FILES := $(LOCAL_MODULE) |
| 188 | include $(BUILD_PREBUILT) |
| 189 | |
| 190 | #libflashutils for /system for dumlock |
| 191 | include $(CLEAR_VARS) |
| 192 | LOCAL_MODULE := libflashutils.so |
| 193 | LOCAL_MODULE_TAGS := eng |
| 194 | LOCAL_MODULE_CLASS := RECOVERY_EXECUTABLES |
| 195 | LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/res/htcd |
| 196 | LOCAL_SRC_FILES := $(LOCAL_MODULE) |
| 197 | include $(BUILD_PREBUILT) |
| 198 | |
| 199 | #libmmcutils for /system for dumlock |
| 200 | include $(CLEAR_VARS) |
| 201 | LOCAL_MODULE := libmmcutils.so |
| 202 | LOCAL_MODULE_TAGS := eng |
| 203 | LOCAL_MODULE_CLASS := RECOVERY_EXECUTABLES |
| 204 | LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/res/htcd |
| 205 | LOCAL_SRC_FILES := $(LOCAL_MODULE) |
| 206 | include $(BUILD_PREBUILT) |
| 207 | |
| 208 | #libmtdutils for /system for dumlock |
| 209 | include $(CLEAR_VARS) |
| 210 | LOCAL_MODULE := libmtdutils.so |
| 211 | LOCAL_MODULE_TAGS := eng |
| 212 | LOCAL_MODULE_CLASS := RECOVERY_EXECUTABLES |
| 213 | LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/res/htcd |
| 214 | LOCAL_SRC_FILES := $(LOCAL_MODULE) |
| 215 | include $(BUILD_PREBUILT) |
| 216 | |
| 217 | #HTCDumlock.apk |
| 218 | include $(CLEAR_VARS) |
| 219 | LOCAL_MODULE := HTCDumlock.apk |
| 220 | LOCAL_MODULE_TAGS := eng |
| 221 | LOCAL_MODULE_CLASS := RECOVERY_EXECUTABLES |
| 222 | LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/res/htcd |
| 223 | LOCAL_SRC_FILES := $(LOCAL_MODULE) |
| 224 | include $(BUILD_PREBUILT) |
| 225 | endif |
Dees_Troy | 6ef6635 | 2013-02-21 08:26:57 -0600 | [diff] [blame] | 226 | |
| 227 | ifneq ($(TW_EXCLUDE_SUPERSU), true) |
| 228 | #su binary |
| 229 | include $(CLEAR_VARS) |
| 230 | LOCAL_MODULE := su |
| 231 | LOCAL_MODULE_TAGS := eng |
| 232 | LOCAL_MODULE_CLASS := RECOVERY_EXECUTABLES |
jt1134 | 113ee73 | 2013-02-22 23:26:10 -0600 | [diff] [blame] | 233 | LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/supersu |
Dees_Troy | 6ef6635 | 2013-02-21 08:26:57 -0600 | [diff] [blame] | 234 | LOCAL_SRC_FILES := $(LOCAL_MODULE) |
| 235 | include $(BUILD_PREBUILT) |
| 236 | |
Dees_Troy | a7939bb | 2013-08-29 20:21:12 +0000 | [diff] [blame] | 237 | #install-recovery.sh |
| 238 | include $(CLEAR_VARS) |
| 239 | LOCAL_MODULE := install-recovery.sh |
| 240 | LOCAL_MODULE_TAGS := eng |
| 241 | LOCAL_MODULE_CLASS := RECOVERY_EXECUTABLES |
| 242 | LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/supersu |
| 243 | LOCAL_SRC_FILES := $(LOCAL_MODULE) |
| 244 | include $(BUILD_PREBUILT) |
| 245 | |
| 246 | #99SuperSUDaemon |
| 247 | include $(CLEAR_VARS) |
| 248 | LOCAL_MODULE := 99SuperSUDaemon |
| 249 | LOCAL_MODULE_TAGS := eng |
| 250 | LOCAL_MODULE_CLASS := RECOVERY_EXECUTABLES |
| 251 | LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/supersu |
| 252 | LOCAL_SRC_FILES := $(LOCAL_MODULE) |
| 253 | include $(BUILD_PREBUILT) |
| 254 | |
Dees_Troy | 6ef6635 | 2013-02-21 08:26:57 -0600 | [diff] [blame] | 255 | #SuperSU special installer APK |
| 256 | include $(CLEAR_VARS) |
| 257 | LOCAL_MODULE := Superuser.apk |
| 258 | LOCAL_MODULE_TAGS := eng |
| 259 | LOCAL_MODULE_CLASS := RECOVERY_EXECUTABLES |
jt1134 | 113ee73 | 2013-02-22 23:26:10 -0600 | [diff] [blame] | 260 | LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/supersu |
Dees_Troy | 6ef6635 | 2013-02-21 08:26:57 -0600 | [diff] [blame] | 261 | LOCAL_SRC_FILES := $(LOCAL_MODULE) |
| 262 | include $(BUILD_PREBUILT) |
jt1134 | 113ee73 | 2013-02-22 23:26:10 -0600 | [diff] [blame] | 263 | endif |