# Makefile for the stand-alone release of Sherlock libraries # (c) 2007 Martin Mares # The default target all: runtree libs api programs extras configs # Include configuration s=. -include obj/config.mk obj/config.mk: @echo "You need to run configure first." && false BUILDSYS=$(s)/build # We will use the libucw build system include $(BUILDSYS)/Maketop CONFIG_SRC_DIR=etc # Install the build system include $(BUILDSYS)/Makefile # Set up names of common libraries (to avoid forward references in rules) ifdef CONFIG_CHARSET LIBCHARSET=$(o)/charset/libcharset.pc endif ifdef CONFIG_SHERLOCK_LIB LIBSH=$(o)/sherlock/libsh.pc LIBSHXML=$(o)/sherlock/xml/libshxml.pc TESTING_DEPS=$(LIBSH) else TESTING_DEPS=$(LIBUCW) endif # The UCW library include $(s)/ucw/Makefile # Install config files ifdef CONFIG_SHERLOCK_LIB FREE_CONFIGS=sherlock local CONFIGS+=$(FREE_CONFIGS) INSTALL_TARGETS+=install-configs install-configs: install -d -m 755 $(DESTDIR)$(INSTALL_CONFIG_DIR) install -m 644 $(addprefix run/$(CONFIG_DIR)/,$(FREE_CONFIGS)) $(DESTDIR)$(INSTALL_CONFIG_DIR) endif # Include submakefiles of requested libraries ifdef CONFIG_SHERLOCK_LIB include $(s)/sherlock/Makefile endif ifdef CONFIG_CHARSET include $(s)/charset/Makefile endif ifdef CONFIG_LANG LIBLANG=$(o)/lang/liblang.pc include $(s)/lang/Makefile endif ifdef CONFIG_IMAGES LIBIMAGES=$(o)/images/libimages.pc include $(s)/images/Makefile endif # Build documentation by default? ifdef CONFIG_DOC all: docs endif libs: $(LIBUCW) $(LIBSH) $(LIBIMAGES) $(LIBCHARSET) $(LIBLANG) # And finally the default rules of the build system include $(BUILDSYS)/Makebottom ifndef CONFIG_LOCAL install: all $(INSTALL_TARGETS) else install: @echo "Nothing to install, this is a local build." && false endif .PHONY: install