| The Android Open Source Project | dd7bc33 | 2009-03-03 19:32:55 -0800 | [diff] [blame] | 1 | # Copyright (C) 2007 Google Inc. | 
|  | 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 | LOCAL_PATH:= $(call my-dir) | 
|  | 16 |  | 
| Elliott Hughes | 379646b | 2015-06-02 13:50:00 -0700 | [diff] [blame] | 17 | fastboot_version := $(shell git -C $(LOCAL_PATH) rev-parse --short=12 HEAD 2>/dev/null)-android | 
|  | 18 |  | 
| The Android Open Source Project | dd7bc33 | 2009-03-03 19:32:55 -0800 | [diff] [blame] | 19 | include $(CLEAR_VARS) | 
|  | 20 |  | 
| Elliott Hughes | 1b708d3 | 2015-12-11 19:07:01 -0800 | [diff] [blame] | 21 | LOCAL_C_INCLUDES := \ | 
|  | 22 | $(LOCAL_PATH)/../adb \ | 
|  | 23 | $(LOCAL_PATH)/../mkbootimg \ | 
| JP Abgrall | 1235158 | 2014-06-17 17:01:14 -0700 | [diff] [blame] | 24 | $(LOCAL_PATH)/../../extras/ext4_utils \ | 
| Elliott Hughes | 1b708d3 | 2015-12-11 19:07:01 -0800 | [diff] [blame] | 25 | $(LOCAL_PATH)/../../extras/f2fs_utils \ | 
|  | 26 |  | 
| David Pursell | 572bce2 | 2016-01-15 14:19:56 -0800 | [diff] [blame] | 27 | LOCAL_SRC_FILES := \ | 
|  | 28 | bootimg_utils.cpp \ | 
|  | 29 | engine.cpp \ | 
|  | 30 | fastboot.cpp \ | 
|  | 31 | fs.cpp\ | 
|  | 32 | protocol.cpp \ | 
|  | 33 | socket.cpp \ | 
| David Pursell | 2ec418a | 2016-01-20 08:32:08 -0800 | [diff] [blame] | 34 | tcp.cpp \ | 
| David Pursell | 4601c97 | 2016-02-05 15:35:09 -0800 | [diff] [blame] | 35 | udp.cpp \ | 
| David Pursell | 572bce2 | 2016-01-15 14:19:56 -0800 | [diff] [blame] | 36 | util.cpp \ | 
|  | 37 |  | 
| The Android Open Source Project | dd7bc33 | 2009-03-03 19:32:55 -0800 | [diff] [blame] | 38 | LOCAL_MODULE := fastboot | 
| Kenny Root | d5d6d97 | 2012-09-26 09:58:07 -0700 | [diff] [blame] | 39 | LOCAL_MODULE_TAGS := debug | 
| Dan Willemsen | 87a419c | 2015-08-13 14:43:34 -0700 | [diff] [blame] | 40 | LOCAL_MODULE_HOST_OS := darwin linux windows | 
| Elliott Hughes | 253c18d | 2015-03-18 22:47:09 -0700 | [diff] [blame] | 41 | LOCAL_CONLYFLAGS += -std=gnu99 | 
| Narayan Kamath | f6e9ffb | 2015-05-11 16:59:46 +0100 | [diff] [blame] | 42 | LOCAL_CFLAGS += -Wall -Wextra -Werror -Wunreachable-code | 
| The Android Open Source Project | dd7bc33 | 2009-03-03 19:32:55 -0800 | [diff] [blame] | 43 |  | 
| Elliott Hughes | 379646b | 2015-06-02 13:50:00 -0700 | [diff] [blame] | 44 | LOCAL_CFLAGS += -DFASTBOOT_REVISION='"$(fastboot_version)"' | 
|  | 45 |  | 
| Elliott Hughes | 82ff315 | 2016-08-31 15:07:18 -0700 | [diff] [blame] | 46 | LOCAL_SRC_FILES_linux := usb_linux.cpp | 
| David Pursell | 0eb8e1b | 2016-01-14 17:18:27 -0800 | [diff] [blame] | 47 | LOCAL_STATIC_LIBRARIES_linux := libselinux | 
| The Android Open Source Project | dd7bc33 | 2009-03-03 19:32:55 -0800 | [diff] [blame] | 48 |  | 
| Elliott Hughes | 82ff315 | 2016-08-31 15:07:18 -0700 | [diff] [blame] | 49 | LOCAL_SRC_FILES_darwin := usb_osx.cpp | 
| David Pursell | 0eb8e1b | 2016-01-14 17:18:27 -0800 | [diff] [blame] | 50 | LOCAL_STATIC_LIBRARIES_darwin := libselinux | 
| Dan Willemsen | 87a419c | 2015-08-13 14:43:34 -0700 | [diff] [blame] | 51 | LOCAL_LDLIBS_darwin := -lpthread -framework CoreFoundation -framework IOKit -framework Carbon | 
|  | 52 | LOCAL_CFLAGS_darwin := -Wno-unused-parameter | 
| The Android Open Source Project | dd7bc33 | 2009-03-03 19:32:55 -0800 | [diff] [blame] | 53 |  | 
| Elliott Hughes | 82ff315 | 2016-08-31 15:07:18 -0700 | [diff] [blame] | 54 | LOCAL_SRC_FILES_windows := usb_windows.cpp | 
| Dan Willemsen | 87a419c | 2015-08-13 14:43:34 -0700 | [diff] [blame] | 55 | LOCAL_STATIC_LIBRARIES_windows := AdbWinApi | 
|  | 56 | LOCAL_REQUIRED_MODULES_windows := AdbWinApi | 
|  | 57 | LOCAL_LDLIBS_windows := -lws2_32 | 
|  | 58 | LOCAL_C_INCLUDES_windows := development/host/windows/usb/api | 
| The Android Open Source Project | dd7bc33 | 2009-03-03 19:32:55 -0800 | [diff] [blame] | 59 |  | 
| Joe Onorato | 2ffe3c8 | 2012-07-18 12:03:33 -0700 | [diff] [blame] | 60 | LOCAL_STATIC_LIBRARIES := \ | 
| Colin Cross | 99f6b86 | 2016-08-26 11:12:38 -0700 | [diff] [blame] | 61 | libziparchive \ | 
| Joe Onorato | 2ffe3c8 | 2012-07-18 12:03:33 -0700 | [diff] [blame] | 62 | libext4_utils_host \ | 
| Joe Onorato | 5069b01 | 2012-07-23 19:15:14 -0700 | [diff] [blame] | 63 | libsparse_host \ | 
| Elliott Hughes | d30ad8a | 2015-03-18 23:12:44 -0700 | [diff] [blame] | 64 | libutils \ | 
|  | 65 | liblog \ | 
| Narayan Kamath | e97e66e | 2015-04-27 16:25:53 +0100 | [diff] [blame] | 66 | libz \ | 
| Elliott Hughes | 1b708d3 | 2015-12-11 19:07:01 -0800 | [diff] [blame] | 67 | libdiagnose_usb \ | 
| Elliott Hughes | c1fd492 | 2015-11-11 18:02:29 +0000 | [diff] [blame] | 68 | libbase \ | 
| David Pursell | 0eb8e1b | 2016-01-14 17:18:27 -0800 | [diff] [blame] | 69 | libcutils \ | 
| David Pursell | b34e4a0 | 2016-02-01 09:42:09 -0800 | [diff] [blame] | 70 | libgtest_host \ | 
| JP Abgrall | 6bd72be | 2014-06-17 23:43:18 -0700 | [diff] [blame] | 71 |  | 
| JP Abgrall | 6bd72be | 2014-06-17 23:43:18 -0700 | [diff] [blame] | 72 | # libf2fs_dlutils_host will dlopen("libf2fs_fmt_host_dyn") | 
| Dan Willemsen | 87a419c | 2015-08-13 14:43:34 -0700 | [diff] [blame] | 73 | LOCAL_CFLAGS_linux := -DUSE_F2FS | 
|  | 74 | LOCAL_LDFLAGS_linux := -ldl -rdynamic -Wl,-rpath,. | 
|  | 75 | LOCAL_REQUIRED_MODULES_linux := libf2fs_fmt_host_dyn | 
| JP Abgrall | 6bd72be | 2014-06-17 23:43:18 -0700 | [diff] [blame] | 76 | # The following libf2fs_* are from system/extras/f2fs_utils, | 
|  | 77 | # and do not use code in external/f2fs-tools. | 
| Dan Willemsen | 87a419c | 2015-08-13 14:43:34 -0700 | [diff] [blame] | 78 | LOCAL_STATIC_LIBRARIES_linux += libf2fs_utils_host libf2fs_ioutils_host libf2fs_dlutils_host | 
| JP Abgrall | 6bd72be | 2014-06-17 23:43:18 -0700 | [diff] [blame] | 79 |  | 
| Dan Willemsen | 87a419c | 2015-08-13 14:43:34 -0700 | [diff] [blame] | 80 | LOCAL_CXX_STL := libc++_static | 
| Colin Cross | 55bf5f0 | 2015-04-16 16:21:44 -0700 | [diff] [blame] | 81 |  | 
|  | 82 | # Don't add anything here, we don't want additional shared dependencies | 
|  | 83 | # on the host fastboot tool, and shared libraries that link against libc++ | 
|  | 84 | # will violate ODR | 
|  | 85 | LOCAL_SHARED_LIBRARIES := | 
|  | 86 |  | 
| The Android Open Source Project | dd7bc33 | 2009-03-03 19:32:55 -0800 | [diff] [blame] | 87 | include $(BUILD_HOST_EXECUTABLE) | 
| Joe Onorato | 5069b01 | 2012-07-23 19:15:14 -0700 | [diff] [blame] | 88 |  | 
| Ying Wang | 6b048ce | 2014-06-19 14:15:03 -0700 | [diff] [blame] | 89 | my_dist_files := $(LOCAL_BUILT_MODULE) | 
|  | 90 | ifeq ($(HOST_OS),linux) | 
|  | 91 | my_dist_files += $(HOST_LIBRARY_PATH)/libf2fs_fmt_host_dyn$(HOST_SHLIB_SUFFIX) | 
|  | 92 | endif | 
| Ying Wang | 71edfc8 | 2016-02-29 19:27:06 -0800 | [diff] [blame] | 93 | $(call dist-for-goals,dist_files sdk win_sdk,$(my_dist_files)) | 
|  | 94 | ifdef HOST_CROSS_OS | 
|  | 95 | # Archive fastboot.exe for win_sdk build. | 
|  | 96 | $(call dist-for-goals,win_sdk,$(ALL_MODULES.host_cross_fastboot.BUILT)) | 
|  | 97 | endif | 
| Ying Wang | 6b048ce | 2014-06-19 14:15:03 -0700 | [diff] [blame] | 98 | my_dist_files := | 
| The Android Open Source Project | dd7bc33 | 2009-03-03 19:32:55 -0800 | [diff] [blame] | 99 |  | 
| The Android Open Source Project | dd7bc33 | 2009-03-03 19:32:55 -0800 | [diff] [blame] | 100 | ifeq ($(HOST_OS),linux) | 
|  | 101 | include $(CLEAR_VARS) | 
| Elliott Hughes | b3748de | 2015-06-23 20:27:58 -0700 | [diff] [blame] | 102 | LOCAL_SRC_FILES := usbtest.cpp usb_linux.cpp util.cpp | 
| The Android Open Source Project | dd7bc33 | 2009-03-03 19:32:55 -0800 | [diff] [blame] | 103 | LOCAL_MODULE := usbtest | 
| Mark Salyzyn | 5957c1f | 2014-04-30 14:05:28 -0700 | [diff] [blame] | 104 | LOCAL_CFLAGS := -Werror | 
| David Pursell | 0b15663 | 2015-10-30 11:22:01 -0700 | [diff] [blame] | 105 | LOCAL_STATIC_LIBRARIES := libbase | 
| The Android Open Source Project | dd7bc33 | 2009-03-03 19:32:55 -0800 | [diff] [blame] | 106 | include $(BUILD_HOST_EXECUTABLE) | 
|  | 107 | endif | 
| David Pursell | 815c7be | 2015-12-09 17:09:54 -0800 | [diff] [blame] | 108 |  | 
|  | 109 | # fastboot_test | 
|  | 110 | # ========================================================= | 
|  | 111 | include $(CLEAR_VARS) | 
|  | 112 |  | 
|  | 113 | LOCAL_MODULE := fastboot_test | 
|  | 114 | LOCAL_MODULE_HOST_OS := darwin linux windows | 
|  | 115 |  | 
| David Pursell | c3a4669 | 2016-01-29 08:10:50 -0800 | [diff] [blame] | 116 | LOCAL_SRC_FILES := \ | 
|  | 117 | socket.cpp \ | 
|  | 118 | socket_mock.cpp \ | 
|  | 119 | socket_test.cpp \ | 
| David Pursell | 2ec418a | 2016-01-20 08:32:08 -0800 | [diff] [blame] | 120 | tcp.cpp \ | 
|  | 121 | tcp_test.cpp \ | 
| David Pursell | 4601c97 | 2016-02-05 15:35:09 -0800 | [diff] [blame] | 122 | udp.cpp \ | 
|  | 123 | udp_test.cpp \ | 
| David Pursell | c3a4669 | 2016-01-29 08:10:50 -0800 | [diff] [blame] | 124 |  | 
| David Pursell | 0eb8e1b | 2016-01-14 17:18:27 -0800 | [diff] [blame] | 125 | LOCAL_STATIC_LIBRARIES := libbase libcutils | 
| David Pursell | 815c7be | 2015-12-09 17:09:54 -0800 | [diff] [blame] | 126 |  | 
|  | 127 | LOCAL_CFLAGS += -Wall -Wextra -Werror -Wunreachable-code | 
|  | 128 |  | 
| David Pursell | 815c7be | 2015-12-09 17:09:54 -0800 | [diff] [blame] | 129 | LOCAL_LDLIBS_darwin := -lpthread -framework CoreFoundation -framework IOKit -framework Carbon | 
|  | 130 | LOCAL_CFLAGS_darwin := -Wno-unused-parameter | 
| David Pursell | 815c7be | 2015-12-09 17:09:54 -0800 | [diff] [blame] | 131 |  | 
| David Pursell | 815c7be | 2015-12-09 17:09:54 -0800 | [diff] [blame] | 132 | LOCAL_LDLIBS_windows := -lws2_32 | 
|  | 133 |  | 
|  | 134 | include $(BUILD_HOST_NATIVE_TEST) |