strtonum \
resource trans res-fd res-mem res-subpool res-mempool res-eltpool \
daemon daemon-ctrl \
- signames
+ signames \
+ opt opt-help opt-conf
LIBUCW_MAIN_INCLUDES= \
lib.h log.h threads.h time.h \
resource.h trans.h \
daemon.h \
signames.h \
- sighandler.h
+ sighandler.h \
+ opt.h
ifdef CONFIG_UCW_THREADS
# Some modules require threading
LIBUCW_MOD_PATHS=$(addprefix $(o)/ucw/,$(LIBUCW_MODS))
export LIBUCW_LIBS=
-#ifdef CONFIG_UCW_THREADS
+ifdef CONFIG_UCW_THREADS
LIBUCW_LIBS+=-lpthread
-#endif
-#ifdef CONFIG_UCW_PCRE
+endif
+ifdef CONFIG_UCW_PCRE
LIBUCW_LIBS+=-lpcre
-#endif
-#ifdef CONFIG_UCW_MONOTONIC_CLOCK
+endif
+ifdef CONFIG_UCW_MONOTONIC_CLOCK
LIBUCW_LIBS+=-lrt
-#endif
+endif
$(o)/ucw/libucw$(LV).a: $(addsuffix .o,$(LIBUCW_MOD_PATHS))
$(o)/ucw/libucw$(LV)-pic.a: $(addsuffix .oo,$(LIBUCW_MOD_PATHS))
$(o)/ucw/libucw$(LV).so: $(addsuffix .oo,$(LIBUCW_MOD_PATHS))
-$(o)/ucw/libucw$(LV).so: SONAME_SUFFIX=.$(UCW_ABI_MAJOR)
+$(o)/ucw/libucw$(LV).so: SONAME_SUFFIX=.0
$(o)/ucw/libucw$(LV).so: LIBS+=$(LIBUCW_LIBS)
ifdef CONFIG_STATIC_PIC
endif
$(o)/ucw/ipaccess-test: $(o)/ucw/ipaccess-test.o $(LIBUCW)
$(o)/ucw/trie-test: $(o)/ucw/trie-test.o $(LIBUCW)
+$(o)/ucw/opt-test: $(o)/ucw/opt-test.o $(LIBUCW)
-TESTS+=$(addprefix $(o)/ucw/,varint.test regex.test unicode.test hash-test.test mempool.test stkstring.test \
- slists.test bbuf.test kmp-test.test getopt.test ff-unicode.test ff-varint.test eltpool.test \
+TESTS+=$(addprefix $(o)/ucw/,regex.test unicode.test hash-test.test mempool.test stkstring.test \
+ slists.test bbuf.test kmp-test.test getopt.test ff-unicode.test eltpool.test \
fb-socket.test trie-test.test string.test sha1.test asort-test.test binheap-test.test \
redblack-test.test fb-file.test fb-grow.test fb-pool.test fb-atomic.test \
fb-limfd.test fb-temp.test fb-mem.test fb-buffer.test fb-mmap.test fb-multi.test url.test strtonum-test.test \
- gary.test time.test crc.test signames.test md5.test bitops.test)
+ gary.test time.test crc.test signames.test md5.test bitops.test opt.test)
$(o)/ucw/varint.test: $(o)/ucw/varint-t
$(o)/ucw/regex.test: $(o)/ucw/regex-t
$(o)/ucw/crc.test: $(o)/ucw/crc-t
$(o)/ucw/signames.test: $(o)/ucw/signames-t
$(o)/ucw/md5.test: $(o)/ucw/md5-t
+$(o)/ucw/opt.test: $(o)/ucw/opt-test
ifdef CONFIG_UCW_THREADS
TESTS+=$(addprefix $(o)/ucw/,asio.test)
INSTALL_TARGETS+=install-libucw-lib
install-libucw-lib:
install -d -m 755 $(DESTDIR)$(INSTALL_LIB_DIR)
- install -m 644 run/lib/libucw$(LV).so.$(UCW_ABI_MAJOR) $(DESTDIR)$(INSTALL_LIB_DIR)/libucw$(LV).so.$(UCW_ABI_VERSION)
- ln -sf libucw$(LV).so.$(UCW_ABI_VERSION) $(DESTDIR)$(INSTALL_LIB_DIR)/libucw$(LV).so.$(UCW_ABI_MAJOR)
+ install -m 644 run/lib/libucw$(LV).so.0 $(DESTDIR)$(INSTALL_LIB_DIR)/libucw$(LV).so.0.0
+ ln -sf libucw$(LV).so.0.0 $(DESTDIR)$(INSTALL_LIB_DIR)/libucw$(LV).so.0
.PHONY: install-libucw-lib
INSTALL_TARGETS+=install-libucw-api
-install-libucw-api:
+install-libucw-api: install-ucw-sorter-api
install -d -m 755 $(DESTDIR)$(INSTALL_LIB_DIR) $(DESTDIR)$(INSTALL_INCLUDE_DIR)/ucw/ $(DESTDIR)$(INSTALL_PKGCONFIG_DIR)
install -m 644 $(addprefix run/include/ucw/,$(LIBUCW_MAIN_INCLUDES) autoconf.h config.h) $(DESTDIR)$(INSTALL_INCLUDE_DIR)/ucw/
install -m 644 run/lib/pkgconfig/libucw.pc $(DESTDIR)$(INSTALL_PKGCONFIG_DIR)
- ln -sf libucw$(LV).so.$(UCW_ABI_VERSION) $(DESTDIR)$(INSTALL_LIB_DIR)/libucw$(LV).so
+ ln -sf libucw$(LV).so.0.0 $(DESTDIR)$(INSTALL_LIB_DIR)/libucw$(LV).so
install -m 644 run/lib/libucw$(LV).a $(DESTDIR)$(INSTALL_LIB_DIR)
.PHONY: install-libucw-api