forked from Mirrors/freeswitch
94 lines
2.6 KiB
Makefile
94 lines
2.6 KiB
Makefile
###############################################################################
|
|
# This directory builds libxmlrpc_util, which contains utility
|
|
# functions that are used by the Xmlprc-c libraries, and also
|
|
# directly by Xmlrpc-c programs. Some of them are documented for use
|
|
# by Xmlrpc-c users, as facilities of the libxmlrpc library (which
|
|
# prerequires libxmlrpc_util).
|
|
#
|
|
# The functions in this library are characterized by being general purpose
|
|
# programming functions, such as one might wish were in the standard C
|
|
# library, which have nothing in particular to do with XML-RPC.
|
|
###############################################################################
|
|
|
|
ifeq ($(SRCDIR),)
|
|
updir = $(shell echo $(dir $(1)) | sed 's/.$$//')
|
|
LIBDIR := $(call updir,$(CURDIR))
|
|
SRCDIR := $(call updir,$(LIBDIR))
|
|
BLDDIR := $(SRCDIR)
|
|
endif
|
|
SUBDIR := lib/libutil
|
|
|
|
include $(BLDDIR)/config.mk
|
|
|
|
default: all
|
|
|
|
TARGET_LIBRARY_NAMES := libxmlrpc_util
|
|
|
|
STATIC_LIBRARIES_TO_INSTALL = libxmlrpc_util.a
|
|
|
|
SHARED_LIBS_TO_BUILD := libxmlrpc_util
|
|
SHARED_LIBS_TO_INSTALL := libxmlrpc_util
|
|
|
|
TARGET_MODS = \
|
|
asprintf \
|
|
base64 \
|
|
error \
|
|
make_printable \
|
|
memblock \
|
|
select \
|
|
sleep \
|
|
string_number \
|
|
time \
|
|
utf8 \
|
|
|
|
OMIT_LIBXMLRPC_UTIL_RULE=Y
|
|
MAJ=3
|
|
# Major number of shared libraries in this directory
|
|
|
|
include $(SRCDIR)/common.mk
|
|
|
|
INCLUDES = -I$(BLDDIR) -Isrcdir \
|
|
-I$(BLDDIR)/include -Isrcdir/include -Isrcdir/lib/util/include
|
|
|
|
UTIL_SHLIB = $(call shlibfn,libxmlrpc_util)
|
|
#UTIL_SHLIB is e.g. libxmlrpc_util.so.3.1
|
|
UTIL_SHLIBLE = $(call shliblefn,libxmlrpc_util)
|
|
#UTIL_SHLIBLE is e.g. libxmlrpc_util.so
|
|
|
|
# This 'common.mk' dependency makes sure the symlinks get built before
|
|
# this make file is used for anything.
|
|
|
|
$(SRCDIR)/common.mk: srcdir blddir
|
|
|
|
.PHONY: all
|
|
all: libxmlrpc_util.a $(TARGET_SHARED_LIBRARIES) $(TARGET_SHARED_LE_LIBS)
|
|
|
|
# Rule for this is in common.mk, courtesy of TARGET_LIBRARY_NAMES:
|
|
$(UTIL_SHLIB): $(TARGET_MODS:%=%.osh)
|
|
$(UTIL_SHLIB): LIBOBJECTS = $(TARGET_MODS:%=%.osh)
|
|
|
|
# Rule for this is in common.mk, courtesy of TARGET_LIBRARY_NAMES:
|
|
|
|
libxmlrpc_util.a: $(TARGET_MODS:%=%.o)
|
|
libxmlrpc_util.a: LIBOBJECTS = $(TARGET_MODS:%=%.o)
|
|
|
|
#-----------------------------------------------------------------------------
|
|
# RULES TO COMPILE OBJECT MODULES FOR LIBRARIES
|
|
#-----------------------------------------------------------------------------
|
|
|
|
# Rules to compile object modules from which to build the static and shared
|
|
# library are in common.mk, courtesy of TARGET_MODS.
|
|
|
|
.PHONY: install
|
|
install: install-common
|
|
|
|
.PHONY: clean distclean
|
|
clean: clean-common
|
|
|
|
distclean: clean distclean-common
|
|
|
|
.PHONY: dep
|
|
dep: dep-common
|
|
|
|
include depend.mk
|