| # Copyright (C) 2007 Google Inc. | 
 | # | 
 | # 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. | 
 |  | 
 | LOCAL_PATH:= $(call my-dir) | 
 |  | 
 | fastboot_version := $(shell git -C $(LOCAL_PATH) rev-parse --short=12 HEAD 2>/dev/null)-android | 
 |  | 
 | include $(CLEAR_VARS) | 
 |  | 
 | LOCAL_C_INCLUDES := $(LOCAL_PATH)/../mkbootimg \ | 
 |   $(LOCAL_PATH)/../../extras/ext4_utils \ | 
 |   $(LOCAL_PATH)/../../extras/f2fs_utils | 
 | LOCAL_SRC_FILES := protocol.c engine.c bootimg_utils.cpp fastboot.cpp util.c fs.c | 
 | LOCAL_MODULE := fastboot | 
 | LOCAL_MODULE_TAGS := debug | 
 | LOCAL_CONLYFLAGS += -std=gnu99 | 
 | LOCAL_CFLAGS += -Wall -Wextra -Werror -Wunreachable-code | 
 |  | 
 | LOCAL_CFLAGS += -DFASTBOOT_REVISION='"$(fastboot_version)"' | 
 |  | 
 | ifeq ($(HOST_OS),linux) | 
 |   LOCAL_SRC_FILES += usb_linux.c util_linux.c | 
 | endif | 
 |  | 
 | ifeq ($(HOST_OS),darwin) | 
 |   LOCAL_SRC_FILES += usb_osx.c util_osx.c | 
 |   LOCAL_LDLIBS += -lpthread -framework CoreFoundation -framework IOKit -framework Carbon | 
 |   LOCAL_CFLAGS += -Wno-unused-parameter | 
 | endif | 
 |  | 
 | ifeq ($(HOST_OS),windows) | 
 |   LOCAL_SRC_FILES += usb_windows.c util_windows.c | 
 |   EXTRA_STATIC_LIBS := AdbWinApi | 
 |   ifneq ($(strip $(USE_CYGWIN)),) | 
 |     # Pure cygwin case | 
 |     LOCAL_LDLIBS += -lpthread | 
 |   endif | 
 |   ifneq ($(strip $(USE_MINGW)),) | 
 |     # MinGW under Linux case | 
 |     LOCAL_LDLIBS += -lws2_32 | 
 |     USE_SYSDEPS_WIN32 := 1 | 
 |   endif | 
 |   LOCAL_C_INCLUDES += development/host/windows/usb/api | 
 | endif | 
 |  | 
 | LOCAL_STATIC_LIBRARIES := \ | 
 |     $(EXTRA_STATIC_LIBS) \ | 
 |     libziparchive-host \ | 
 |     libext4_utils_host \ | 
 |     libsparse_host \ | 
 |     libutils \ | 
 |     liblog \ | 
 |     libz \ | 
 |     libbase | 
 |  | 
 | ifneq ($(HOST_OS),windows) | 
 | LOCAL_STATIC_LIBRARIES += libselinux | 
 | endif # HOST_OS != windows | 
 |  | 
 | ifeq ($(HOST_OS),linux) | 
 | # libf2fs_dlutils_host will dlopen("libf2fs_fmt_host_dyn") | 
 | LOCAL_CFLAGS += -DUSE_F2FS | 
 | LOCAL_LDFLAGS += -ldl -rdynamic -Wl,-rpath,. | 
 | LOCAL_REQUIRED_MODULES := libf2fs_fmt_host_dyn | 
 | # The following libf2fs_* are from system/extras/f2fs_utils, | 
 | # and do not use code in external/f2fs-tools. | 
 | LOCAL_STATIC_LIBRARIES += libf2fs_utils_host libf2fs_ioutils_host libf2fs_dlutils_host | 
 | endif | 
 |  | 
 | # libc++ not available on windows yet | 
 | ifneq ($(HOST_OS),windows) | 
 |     LOCAL_CXX_STL := libc++_static | 
 | endif | 
 |  | 
 | # Don't add anything here, we don't want additional shared dependencies | 
 | # on the host fastboot tool, and shared libraries that link against libc++ | 
 | # will violate ODR | 
 | LOCAL_SHARED_LIBRARIES := | 
 |  | 
 | include $(BUILD_HOST_EXECUTABLE) | 
 |  | 
 | my_dist_files := $(LOCAL_BUILT_MODULE) | 
 | ifeq ($(HOST_OS),linux) | 
 | my_dist_files += $(HOST_LIBRARY_PATH)/libf2fs_fmt_host_dyn$(HOST_SHLIB_SUFFIX) | 
 | endif | 
 | $(call dist-for-goals,dist_files sdk,$(my_dist_files)) | 
 | my_dist_files := | 
 |  | 
 |  | 
 | ifeq ($(HOST_OS),linux) | 
 | include $(CLEAR_VARS) | 
 | LOCAL_SRC_FILES := usbtest.c usb_linux.c util.c | 
 | LOCAL_MODULE := usbtest | 
 | LOCAL_CFLAGS := -Werror | 
 | include $(BUILD_HOST_EXECUTABLE) | 
 | endif | 
 |  | 
 | ifeq ($(HOST_OS),windows) | 
 | $(LOCAL_INSTALLED_MODULE): $(HOST_OUT_EXECUTABLES)/AdbWinApi.dll | 
 | endif |