| # 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)/../adb \ |
| $(LOCAL_PATH)/../mkbootimg \ |
| $(LOCAL_PATH)/../../extras/ext4_utils \ |
| $(LOCAL_PATH)/../../extras/f2fs_utils \ |
| |
| LOCAL_SRC_FILES := \ |
| bootimg_utils.cpp \ |
| engine.cpp \ |
| fastboot.cpp \ |
| fs.cpp\ |
| protocol.cpp \ |
| socket.cpp \ |
| tcp.cpp \ |
| udp.cpp \ |
| util.cpp \ |
| |
| LOCAL_MODULE := fastboot |
| LOCAL_MODULE_TAGS := debug |
| LOCAL_MODULE_HOST_OS := darwin linux windows |
| LOCAL_CONLYFLAGS += -std=gnu99 |
| LOCAL_CFLAGS += -Wall -Wextra -Werror -Wunreachable-code |
| |
| LOCAL_CFLAGS += -DFASTBOOT_REVISION='"$(fastboot_version)"' |
| |
| LOCAL_SRC_FILES_linux := usb_linux.cpp util_linux.cpp |
| LOCAL_STATIC_LIBRARIES_linux := libselinux |
| |
| LOCAL_SRC_FILES_darwin := usb_osx.cpp util_osx.cpp |
| LOCAL_STATIC_LIBRARIES_darwin := libselinux |
| LOCAL_LDLIBS_darwin := -lpthread -framework CoreFoundation -framework IOKit -framework Carbon |
| LOCAL_CFLAGS_darwin := -Wno-unused-parameter |
| |
| LOCAL_SRC_FILES_windows := usb_windows.cpp util_windows.cpp |
| LOCAL_STATIC_LIBRARIES_windows := AdbWinApi |
| LOCAL_REQUIRED_MODULES_windows := AdbWinApi |
| LOCAL_LDLIBS_windows := -lws2_32 |
| LOCAL_C_INCLUDES_windows := development/host/windows/usb/api |
| |
| LOCAL_STATIC_LIBRARIES := \ |
| libziparchive-host \ |
| libext4_utils_host \ |
| libsparse_host \ |
| libutils \ |
| liblog \ |
| libz \ |
| libdiagnose_usb \ |
| libbase \ |
| libcutils \ |
| libgtest_host \ |
| |
| # libf2fs_dlutils_host will dlopen("libf2fs_fmt_host_dyn") |
| LOCAL_CFLAGS_linux := -DUSE_F2FS |
| LOCAL_LDFLAGS_linux := -ldl -rdynamic -Wl,-rpath,. |
| LOCAL_REQUIRED_MODULES_linux := 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_linux += libf2fs_utils_host libf2fs_ioutils_host libf2fs_dlutils_host |
| |
| LOCAL_CXX_STL := libc++_static |
| |
| # 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 win_sdk,$(my_dist_files)) |
| ifdef HOST_CROSS_OS |
| # Archive fastboot.exe for win_sdk build. |
| $(call dist-for-goals,win_sdk,$(ALL_MODULES.host_cross_fastboot.BUILT)) |
| endif |
| my_dist_files := |
| |
| ifeq ($(HOST_OS),linux) |
| include $(CLEAR_VARS) |
| LOCAL_SRC_FILES := usbtest.cpp usb_linux.cpp util.cpp |
| LOCAL_MODULE := usbtest |
| LOCAL_CFLAGS := -Werror |
| LOCAL_STATIC_LIBRARIES := libbase |
| include $(BUILD_HOST_EXECUTABLE) |
| endif |
| |
| # fastboot_test |
| # ========================================================= |
| include $(CLEAR_VARS) |
| |
| LOCAL_MODULE := fastboot_test |
| LOCAL_MODULE_HOST_OS := darwin linux windows |
| |
| LOCAL_SRC_FILES := \ |
| socket.cpp \ |
| socket_mock.cpp \ |
| socket_test.cpp \ |
| tcp.cpp \ |
| tcp_test.cpp \ |
| udp.cpp \ |
| udp_test.cpp \ |
| |
| LOCAL_STATIC_LIBRARIES := libbase libcutils |
| |
| LOCAL_CFLAGS += -Wall -Wextra -Werror -Wunreachable-code |
| |
| LOCAL_LDLIBS_darwin := -lpthread -framework CoreFoundation -framework IOKit -framework Carbon |
| LOCAL_CFLAGS_darwin := -Wno-unused-parameter |
| |
| LOCAL_LDLIBS_windows := -lws2_32 |
| |
| include $(BUILD_HOST_NATIVE_TEST) |