1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70
|
NAME = libcutils
# copied from libcutils/Android.bp
libcutils_nonwindows_sources = \
android_get_control_file.cpp \
fs.c \
multiuser.c \
socket_inaddr_any_server_unix.c \
socket_local_client_unix.c \
socket_local_server_unix.c \
socket_network_client_unix.c \
sockets_unix.cpp \
str_parms.c \
# copied from libcutils/Android.bp
cc_library_srcs = \
config_utils.c \
fs_config.cpp \
canned_fs_config.c \
hashmap.c \
iosched_policy.c \
load_file.c \
native_handle.c \
open_memstream.c \
record_stream.c \
sched_policy.cpp \
sockets.cpp \
strdup16to8.c \
strdup8to16.c \
strlcpy.c \
threads.c \
# copied from libcutils/Android.bp
cc_library_target_host_srcs = \
dlmalloc_stubs.c
# copied from libcutils/Android.bp
cc_library_target_not_windows_srcs = \
ashmem-host.c \
trace-host.c \
SOURCES = \
$(libcutils_nonwindows_sources) \
$(cc_library_srcs) \
$(cc_library_target_host_srcs) \
$(cc_library_target_not_windows_srcs)
CSOURCES := $(foreach source, $(filter %.c, $(SOURCES)), libcutils/$(source))
CXXSOURCES := $(foreach source, $(filter %.cpp, $(SOURCES)), libcutils/$(source))
COBJECTS := $(CSOURCES:.c=.o)
CXXOBJECTS := $(CXXSOURCES:.cpp=.o)
CFLAGS += -c
CXXFLAGS += -c
CPPFLAGS += -Iinclude
LDFLAGS += -shared -Wl,-soname,$(NAME).so.0 \
-Wl,-rpath=/usr/lib/$(DEB_HOST_MULTIARCH)/android -lpthread -L. -llog
build: $(COBJECTS) $(CXXOBJECTS)
$(CXX) $^ -o $(NAME).so.0 $(LDFLAGS)
ln -s $(NAME).so.0 $(NAME).so
clean:
$(RM) $(CXXOBJECTS) $(COBJECTS) $(NAME).so*
$(COBJECTS): %.o: %.c
$(CC) $< -o $@ $(CFLAGS) $(CPPFLAGS)
$(CXXOBJECTS): %.o: %.cpp
$(CXX) $< -o $@ $(CXXFLAGS) $(CPPFLAGS)
|