Home | History | Annotate | Download | only in adb
      1 # Copyright 2005 The Android Open Source Project
      2 #
      3 # Android.mk for adb
      4 #
      5 
      6 LOCAL_PATH:= $(call my-dir)
      7 
      8 # adb host tool
      9 # =========================================================
     10 include $(CLEAR_VARS)
     11 
     12 # Default to a virtual (sockets) usb interface
     13 USB_SRCS :=
     14 EXTRA_SRCS :=
     15 
     16 ifeq ($(HOST_OS),linux)
     17   USB_SRCS := usb_linux.c
     18   EXTRA_SRCS := get_my_path_linux.c
     19   LOCAL_LDLIBS += -lrt -lncurses -lpthread
     20 endif
     21 
     22 ifeq ($(HOST_OS),darwin)
     23   USB_SRCS := usb_osx.c
     24   EXTRA_SRCS := get_my_path_darwin.c
     25   LOCAL_LDLIBS += -lpthread -framework CoreFoundation -framework IOKit -framework Carbon
     26 endif
     27 
     28 ifeq ($(HOST_OS),freebsd)
     29   USB_SRCS := usb_libusb.c
     30   EXTRA_SRCS := get_my_path_freebsd.c
     31   LOCAL_LDLIBS += -lpthread -lusb
     32 endif
     33 
     34 ifeq ($(HOST_OS),windows)
     35   USB_SRCS := usb_windows.c
     36   EXTRA_SRCS := get_my_path_windows.c
     37   EXTRA_STATIC_LIBS := AdbWinApi
     38   ifneq ($(strip $(USE_CYGWIN)),)
     39     # Pure cygwin case
     40     LOCAL_LDLIBS += -lpthread
     41     LOCAL_C_INCLUDES += /usr/include/w32api/ddk
     42   endif
     43   ifneq ($(strip $(USE_MINGW)),)
     44     # MinGW under Linux case
     45     LOCAL_LDLIBS += -lws2_32
     46     USE_SYSDEPS_WIN32 := 1
     47     LOCAL_C_INCLUDES += /usr/i586-mingw32msvc/include/ddk
     48   endif
     49   LOCAL_C_INCLUDES += development/host/windows/usb/api/
     50 endif
     51 
     52 LOCAL_SRC_FILES := \
     53 	adb.c \
     54 	console.c \
     55 	transport.c \
     56 	transport_local.c \
     57 	transport_usb.c \
     58 	commandline.c \
     59 	adb_client.c \
     60 	sockets.c \
     61 	services.c \
     62 	file_sync_client.c \
     63 	$(EXTRA_SRCS) \
     64 	$(USB_SRCS) \
     65 	utils.c \
     66 	usb_vendors.c
     67 
     68 
     69 ifneq ($(USE_SYSDEPS_WIN32),)
     70   LOCAL_SRC_FILES += sysdeps_win32.c
     71 else
     72   LOCAL_SRC_FILES += fdevent.c
     73 endif
     74 
     75 LOCAL_CFLAGS += -O2 -g -DADB_HOST=1  -Wall -Wno-unused-parameter
     76 LOCAL_CFLAGS += -D_XOPEN_SOURCE -D_GNU_SOURCE
     77 LOCAL_MODULE := adb
     78 
     79 LOCAL_STATIC_LIBRARIES := libzipfile libunz $(EXTRA_STATIC_LIBS)
     80 ifeq ($(USE_SYSDEPS_WIN32),)
     81 	LOCAL_STATIC_LIBRARIES += libcutils
     82 endif
     83 
     84 include $(BUILD_HOST_EXECUTABLE)
     85 
     86 $(call dist-for-goals,dist_files,$(LOCAL_BUILT_MODULE))
     87 
     88 ifeq ($(HOST_OS),windows)
     89 $(LOCAL_INSTALLED_MODULE): \
     90     $(HOST_OUT_EXECUTABLES)/AdbWinApi.dll \
     91     $(HOST_OUT_EXECUTABLES)/AdbWinUsbApi.dll
     92 endif
     93 
     94 
     95 # adbd device daemon
     96 # =========================================================
     97 
     98 BUILD_ADBD := true
     99 
    100 # build adbd for the Linux simulator build
    101 # so we can use it to test the adb USB gadget driver on x86
    102 #ifeq ($(HOST_OS),linux)
    103 #    BUILD_ADBD := true
    104 #endif
    105 
    106 
    107 ifeq ($(BUILD_ADBD),true)
    108 include $(CLEAR_VARS)
    109 
    110 LOCAL_SRC_FILES := \
    111 	adb.c \
    112 	backup_service.c \
    113 	fdevent.c \
    114 	transport.c \
    115 	transport_local.c \
    116 	transport_usb.c \
    117 	sockets.c \
    118 	services.c \
    119 	file_sync_service.c \
    120 	jdwp_service.c \
    121 	framebuffer_service.c \
    122 	remount_service.c \
    123 	usb_linux_client.c \
    124 	log_service.c \
    125 	utils.c
    126 
    127 LOCAL_CFLAGS := -O2 -g -DADB_HOST=0 -Wall -Wno-unused-parameter
    128 LOCAL_CFLAGS += -D_XOPEN_SOURCE -D_GNU_SOURCE
    129 
    130 # TODO: This should probably be board specific, whether or not the kernel has
    131 # the gadget driver; rather than relying on the architecture type.
    132 ifeq ($(TARGET_ARCH),arm)
    133 LOCAL_CFLAGS += -DANDROID_GADGET=1
    134 endif
    135 
    136 LOCAL_MODULE := adbd
    137 
    138 LOCAL_FORCE_STATIC_EXECUTABLE := true
    139 LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT_SBIN)
    140 LOCAL_UNSTRIPPED_PATH := $(TARGET_ROOT_OUT_SBIN_UNSTRIPPED)
    141 
    142 LOCAL_STATIC_LIBRARIES := libcutils libc
    143 include $(BUILD_EXECUTABLE)
    144 
    145 endif
    146 
    147 
    148 # adb host tool for device-as-host
    149 # =========================================================
    150 ifneq ($(SDK_ONLY),true)
    151 include $(CLEAR_VARS)
    152 
    153 LOCAL_LDLIBS := -lrt -lncurses -lpthread
    154 
    155 LOCAL_SRC_FILES := \
    156 	adb.c \
    157 	console.c \
    158 	transport.c \
    159 	transport_local.c \
    160 	transport_usb.c \
    161 	commandline.c \
    162 	adb_client.c \
    163 	sockets.c \
    164 	services.c \
    165 	file_sync_client.c \
    166 	get_my_path_linux.c \
    167 	usb_linux.c \
    168 	utils.c \
    169 	usb_vendors.c \
    170 	fdevent.c
    171 
    172 LOCAL_CFLAGS := \
    173 	-O2 \
    174 	-g \
    175 	-DADB_HOST=1 \
    176 	-DADB_HOST_ON_TARGET=1 \
    177 	-Wall \
    178 	-Wno-unused-parameter \
    179 	-D_XOPEN_SOURCE \
    180 	-D_GNU_SOURCE
    181 
    182 LOCAL_MODULE := adb
    183 
    184 LOCAL_STATIC_LIBRARIES := libzipfile libunz libcutils
    185 
    186 include $(BUILD_EXECUTABLE)
    187 endif
    188