freeswitch/libs/xmlrpc-c/include/Makefile

155 lines
5.3 KiB
Makefile

ifeq ($(SRCDIR),)
updir = $(shell echo $(dir $(1)) | sed 's/.$$//')
SRCDIR := $(call updir,$(CURDIR))
BLDDIR := $(SRCDIR)
endif
SUBDIR := include
include $(BLDDIR)/config.mk
default: all
all: xmlrpc-c/config.h
xmlrpc-c/config.h: $(BLDDIR)/$(SUBDIR)/xmlrpc-c
>$@
@echo "Lots of echoes to '$@' suppressed here ..."
@echo '#ifndef XMLRPC_C_CONFIG_H_INCLUDED' >>$@
@echo '#define XMLRPC_C_CONFIG_H_INCLUDED' >>$@
@echo '' >>$@
@echo '/* This file, part of XML-RPC For C/C++, is meant to ' >>$@
@echo ' define characteristics of this particular installation '>>$@
@echo ' that the other <xmlrpc-c/...> header files need in ' >>$@
@echo ' order to compile correctly when #included in Xmlrpc-c' >>$@
@echo ' user code.' >>$@
@echo '' >>$@
@echo ' Those header files #include this one.' >>$@
@echo '' >>$@
@echo ' This file was created by a make rule.' >>$@
@echo '*/' >>$@
@echo '#define XMLRPC_HAVE_WCHAR $(HAVE_WCHAR_H_DEFINE)' >>$@
@echo '#ifdef WIN32' >>$@
@echo ' /* SOCKET is a type defined by <winsock.h>. Anyone who' >>$@
@echo ' uses XMLRPC_SOCKET on a WIN32 system must #include' >>$@
@echo ' <winsock.h>' >>$@
@echo ' */' >>$@
@echo ' #define XMLRPC_SOCKET SOCKET' >>$@
@echo ' #define XMLRPC_HAVE_TIMEVAL 0' >>$@
@echo ' #define XMLRPC_HAVE_TIMESPEC 0' >>$@
@echo ' #define XMLRPC_HAVE_PTHREAD 0' >>$@
@echo '#else' >>$@
@echo ' #define XMLRPC_SOCKET int' >>$@
@echo ' #define XMLRPC_HAVE_TIMEVAL 1' >>$@
@echo ' #define XMLRPC_HAVE_TIMESPEC 1' >>$@
@echo ' #define XMLRPC_HAVE_PTHREAD 1' >>$@
@echo '#endif' >>$@
@echo '' >>$@
@echo '#if defined(_MSC_VER)' >>$@
@echo ' /* Newer MSVC has long long, but MSVC 6 does not */' >>$@
@echo ' #define XMLRPC_INT64 __int64' >>$@
@echo ' #define XMLRPC_PRId64 "I64"' >>$@
@echo ' #define XMLRPC_INT32 __int32' >>$@
@echo '#else' >>$@
@echo ' #define XMLRPC_INT64 long long' >>$@
@echo ' #define XMLRPC_PRId64 "lld"' >>$@
@echo ' #define XMLRPC_INT32 int' >>$@
@echo '#endif' >>$@
@echo '#endif' >>$@
$(BLDDIR)/$(SUBDIR)/xmlrpc-c:
mkdir $@
COMPAT_LINK_CMDS = \
$(LN_S) xmlrpc-c/oldxmlrpc.h xmlrpc.h; \
$(LN_S) xmlrpc-c/server.h xmlrpc_server.h; \
$(LN_S) xmlrpc-c/server_abyss.h xmlrpc_abyss.h; \
$(LN_S) xmlrpc-c/server_w32httpsys.h xmlrpc_server_w32httpsys.h; \
HEADERS_TO_INSTALL = \
xmlrpc-c/config.h \
xmlrpc-c/inttypes.h \
xmlrpc-c/c_util.h \
xmlrpc-c/util.h \
xmlrpc-c/base.h \
xmlrpc-c/json.h \
xmlrpc-c/abyss.h \
xmlrpc-c/abyss_unixsock.h \
xmlrpc-c/abyss_winsock.h \
xmlrpc-c/server.h \
xmlrpc-c/server_abyss.h \
xmlrpc-c/server_w32httpsys.h \
xmlrpc-c/oldxmlrpc.h \
ifeq ($(ENABLE_CPLUSPLUS),yes)
HEADERS_TO_INSTALL += \
xmlrpc-c/oldcppwrapper.hpp \
xmlrpc-c/girerr.hpp \
xmlrpc-c/girmem.hpp \
xmlrpc-c/base.hpp \
xmlrpc-c/timeout.hpp \
xmlrpc-c/xml.hpp \
xmlrpc-c/registry.hpp \
xmlrpc-c/server_abyss.hpp \
xmlrpc-c/packetsocket.hpp \
xmlrpc-c/server_pstream.hpp \
COMPAT_LINK_CMDS += $(LN_S) xmlrpc-c/oldcppwrapper.hpp XmlRpcCpp.h;
endif
HEADERINST_PREFIX = /xmlrpc-c
ifeq ($(MUST_BUILD_CLIENT),yes)
HEADERS_TO_INSTALL += \
xmlrpc-c/client.h \
xmlrpc-c/transport.h \
xmlrpc-c/client_global.h \
COMPAT_LINK_CMDS += $(LN_S) xmlrpc-c/client.h xmlrpc_client.h;
ifeq ($(ENABLE_CPLUSPLUS),yes)
HEADERS_TO_INSTALL += \
xmlrpc-c/client.hpp \
xmlrpc-c/client_transport.hpp \
xmlrpc-c/client_simple.hpp \
endif
endif
ifeq ($(ENABLE_CGI_SERVER),yes)
HEADERS_TO_INSTALL += xmlrpc-c/server_cgi.h
COMPAT_LINK_CMDS += $(LN_S) xmlrpc-c/server_cgi.h xmlrpc_cgi.h;
endif
default: all
all:
.PHONY: install-compat-hdr
install-compat-hdr: install-headers
# Install old names of header files for backward compatibility
cd $(DESTDIR)$(HEADERINST_DIR); \
rm -f xmlrpc.h xmlrpc_client.h xmlrpc_server.h xmlrpc_cgi.h \
xmlrpc_server_abyss.h xmlrpc_abyss.h \
xmlrpc_server_w32httpsys.h \
XmlRpcCpp.h; \
$(COMPAT_LINK_CMDS)
.PHONY: install
install: install-common install-compat-hdr
.PHONY: clean
clean:
rm -f xmlrpc-c/config.h
.PHONY: distclean
distclean: clean
.PHONY: check
check:
.PHONY: dep
dep:
OMIT_CONFIG_H_RULE = Y
include $(SRCDIR)/common.mk