fastdfs/client/Makefile.in

116 lines
5.0 KiB
Makefile

.SUFFIXES: .c .o .lo
COMPILE = $(CC) $(CFLAGS)
ENABLE_STATIC_LIB = $(ENABLE_STATIC_LIB)
ENABLE_SHARED_LIB = $(ENABLE_SHARED_LIB)
INC_PATH = -I../common -I../tracker -I/usr/local/include
LIB_PATH = $(LIBS)
TARGET_PATH = $(TARGET_PREFIX)/bin
TARGET_LIB = $(TARGET_PREFIX)/lib
TARGET_INC = $(TARGET_PREFIX)/include
CONFIG_PATH = $(TARGET_CONF_PATH)
FAST_STATIC_OBJS = ../common/hash.o ../common/chain.o \
../common/shared_func.o ../common/ini_file_reader.o \
../common/logger.o ../common/sockopt.o \
../common/base64.o ../common/sched_thread.o \
../common/http_func.o ../common/md5.o \
../common/pthread_func.o ../common/local_ip_func.o \
../common/avl_tree.o ../common/connection_pool.o
FDFS_STATIC_OBJS = ../common/fdfs_global.o ../common/fdfs_http_shared.o \
../common/mime_file_parser.o ../tracker/tracker_proto.o \
../tracker/fdfs_shared_func.o \
../storage/trunk_mgr/trunk_shared.o \
tracker_client.o client_func.o \
client_global.o storage_client.o
STATIC_OBJS = $(FAST_STATIC_OBJS) $(FDFS_STATIC_OBJS)
FAST_SHARED_OBJS = ../common/hash.lo ../common/chain.lo \
../common/shared_func.lo ../common/ini_file_reader.lo \
../common/logger.lo ../common/sockopt.lo \
../common/base64.lo ../common/sched_thread.lo \
../common/http_func.lo ../common/md5.lo \
../common/pthread_func.lo ../common/local_ip_func.lo \
../common/avl_tree.lo ../common/connection_pool.lo
FDFS_SHARED_OBJS = ../common/fdfs_global.lo ../common/fdfs_http_shared.lo \
../common/mime_file_parser.lo ../tracker/tracker_proto.lo \
../tracker/fdfs_shared_func.lo \
../storage/trunk_mgr/trunk_shared.lo \
tracker_client.lo client_func.lo \
client_global.lo storage_client.lo
FAST_HEADER_FILES = ../common/common_define.h ../common/hash.h \
../common/chain.h ../common/logger.h \
../common/base64.h ../common/shared_func.h \
../common/pthread_func.h ../common/ini_file_reader.h \
../common/sockopt.h ../common/sched_thread.h \
../common/http_func.h ../common/md5.h ../common/_os_bits.h \
../common/local_ip_func.h ../common/avl_tree.h \
../common/connection_pool.h
FDFS_HEADER_FILES = ../common/fdfs_define.h ../common/fdfs_global.h \
../common/mime_file_parser.h ../common/fdfs_http_shared.h \
../tracker/tracker_types.h ../tracker/tracker_proto.h \
../tracker/fdfs_shared_func.h \
../storage/trunk_mgr/trunk_shared.h \
tracker_client.h storage_client.h storage_client1.h \
client_func.h client_global.h fdfs_client.h
ALL_OBJS = $(STATIC_OBJS) $(FAST_SHARED_OBJS) $(FDFS_SHARED_OBJS)
ALL_PRGS = fdfs_monitor fdfs_test fdfs_test1 fdfs_crc32 fdfs_upload_file \
fdfs_download_file fdfs_delete_file fdfs_file_info \
fdfs_appender_test fdfs_appender_test1 fdfs_append_file \
fdfs_upload_appender
STATIC_LIBS = libfastcommon.a libfdfsclient.a
SHARED_LIBS = libfastcommon.so.1 libfdfsclient.so.1
ALL_LIBS = $(STATIC_LIBS) $(SHARED_LIBS)
all: $(ALL_OBJS) $(ALL_PRGS) $(ALL_LIBS)
libfastcommon.so.1:
$(COMPILE) -o $@ $< -shared $(FAST_SHARED_OBJS) $(LIB_PATH)
ln -fs libfastcommon.so.1 libfastcommon.so
libfdfsclient.so.1:
$(COMPILE) -o $@ $< -shared $(FDFS_SHARED_OBJS) $(LIB_PATH) -L. -lfastcommon
ln -fs libfdfsclient.so.1 libfdfsclient.so
libfastcommon.a:
ar cru $@ $< $(FAST_STATIC_OBJS)
libfdfsclient.a:
ar cru $@ $< $(FDFS_STATIC_OBJS)
.o:
$(COMPILE) -o $@ $< $(STATIC_OBJS) $(LIB_PATH) $(INC_PATH)
.c:
$(COMPILE) -o $@ $< $(STATIC_OBJS) $(LIB_PATH) $(INC_PATH)
.c.o:
$(COMPILE) -c -o $@ $< $(INC_PATH)
.c.lo:
$(COMPILE) -c -fPIC -o $@ $< $(INC_PATH)
install:
mkdir -p $(TARGET_PATH)
mkdir -p $(CONFIG_PATH)
mkdir -p $(TARGET_LIB)
cp -f $(ALL_PRGS) $(TARGET_PATH)
if [ $(ENABLE_STATIC_LIB) -eq 1 ]; then cp -f $(STATIC_LIBS) $(TARGET_LIB); fi
if [ $(ENABLE_SHARED_LIB) -eq 1 ]; then cp -f $(SHARED_LIBS) $(TARGET_LIB); fi
if [ $(ENABLE_SHARED_LIB) -eq 1 ]; then ln -fs $(TARGET_LIB)/libfastcommon.so.1 $(TARGET_LIB)/libfastcommon.so; fi
if [ $(ENABLE_SHARED_LIB) -eq 1 ]; then ln -fs $(TARGET_LIB)/libfdfsclient.so.1 $(TARGET_LIB)/libfdfsclient.so; fi
if [ ! -f $(CONFIG_PATH)/client.conf ]; then cp -f ../conf/client.conf ../conf/http.conf $(CONFIG_PATH); fi
mkdir -p $(TARGET_INC)
mkdir -p $(TARGET_INC)/fastcommon
mkdir -p $(TARGET_INC)/fastdfs
cp -f $(FAST_HEADER_FILES) $(TARGET_INC)/fastcommon
cp -f $(FDFS_HEADER_FILES) $(TARGET_INC)/fastdfs
if [ $(ENABLE_SHARED_LIB) -eq 1 -a $(TARGET_LIB) = "/usr/local/lib" ]; then sh ./fdfs_link_library.sh; fi
clean:
rm -f $(ALL_OBJS) $(ALL_PRGS) $(ALL_LIBS) libfastcommon.so libfdfsclient.so