Я строю bucnh библиотек, использующих ndk-build. В какой-то момент, файл тк может быть в два раза включены, так как она импортирует 3-библиотеками, я защищен двойной импорт с помощью глобальной переменной:Android makefiles: Как «раннее возвращение»?
# Importing nlopt!
# Prevent warnings reporting module was imported twice:
ifneq ($(imported_nlopt_$(TARGET_ARCH_ABI)),true)
imported_nlopt_$(TARGET_ARCH_ABI) := true
ifeq ($(APP_OPTIM),debug)
# Importing static library nlopt_debug:
include $(CLEAR_VARS)
LOCAL_MODULE := nlopt_debug
LOCAL_SRC_FILES := nlopt/nlopt-2.4.2/lib/$(PLATFORM)/$(COMPILER)/Debug/$(LIB_PREFIX)nlopt$(DEBUG_INFIX)$(DYNAMIC_LINK_EXT)
include $(PREBUILT_SHARED_LIBRARY)
else
# Importing static library nlopt_release:
include $(CLEAR_VARS)
LOCAL_MODULE := nlopt_release
LOCAL_SRC_FILES := nlopt/nlopt-2.4.2/lib/$(PLATFORM)/$(COMPILER)/Release/$(LIB_PREFIX)nlopt$(DYNAMIC_LINK_EXT)
include $(PREBUILT_SHARED_LIBRARY)
endif
else
$(info "NLOPT already imported!")
endif
Мне нужно сделать это во многих местах, и она начинает anoying меня весь файл находится в инструкции if
.
«Ранняя прибыль» поддерживается в make-файлах? Могу ли я сделать что-то вроде:
ifeq ($(imported_nlopt_$(TARGET_ARCH_ABI)),true)
return
endif
imported_nlopt_$(TARGET_ARCH_ABI) := true
...
return
не распознается, когда я исполняю это.
AFAIK Нету. Таких вещей нет. – Hayt