Sophie

Sophie

distrib > Mageia > 5 > x86_64 > media > core-release-src > by-pkgid > 328670fe702763a1309ecf426d5d35fd > files > 1

osptoolkit-4.0.3-5.mga5.src.rpm

#
# OSP Toolkit Makefile for Debian
#

# Default install directory
INSTALL_PATH = $(DESTDIR)/usr
CONFIG_PATH = $(DESTDIR)/etc
PC_PATH = $(DESTDIR)/usr/lib/pkgconfig

# Compile tools
CC = gcc
D2M = docbook-to-man

# Compile flags
DEFFLAGS = -DOSP_ALLOW_DUP_TXN -DOSP_NO_DELETE_CHECK -DOSP_SDK -D_REENTRANT \
	   -D_POSIX_THREADS -DOPENSSL_NO_KRB5 -D_GNU_SOURCE
INCFLAGS = -I$(INCDIR) -I$(ENRDIR) -I$(EXPDIR)
# DEBFLAGS = -DOSPC_DEBUG=1
GFLAGS = -g -Wall
CFLAGS = $(DEFFLAGS) $(INCFLAGS) $(DEBFLAGS) $(GFLAGS) $(ADDFLAGS)
colon = :
period = .
LTFLAGS = -rpath /usr/lib -version-number $(subst $(period),$(colon),$(VERSION))
LDFLAGS =

# General libries
GENLIBS = -lm -lpthread

# SSL library selection for OpenSSL
SSL_OBJS = ospopenssl
SSLLIBS = -lssl -lcrypto

# OSP Toolkit directories
INCDIR = include
LIBDIR = lib
SRCDIR = src
ENRDIR = enroll
EXPDIR = test
BINDIR = bin
DEBDIR = debian

# OSP Toolkit objects & library
OSP_OBJS = osppkcs1 osppkcs8 osppkcs7 ospcryptowrap ospasn1ids ospasn1object \
	   ospx509 ospasn1 ospasn1primitives ospasn1parse ospcrypto osptnlog \
	   ospsecssl  ospsecurity osplist osphttp ospxml ospmime ospprovider \
           ospproviderapi ospsocket ospcomm osputils ospmsgque ospmsginfo \
	   osptransapi osptrans ospinit ospmsgelem ospdest ospusage ospmsgattr \
	   ospcallid osptoken ospmsgutil ospmsgdesc ospostime ospxmltype \
	   ospxmlparse ospxmlattr ospxmlutil ospxmlenc ospxmlelem ospusageind \
           ospstatus ospauthreq ospauthrsp ospauthind ospauthcnf ospreauthreq \
	   ospreauthrsp ospusagecnf ospb64 ospbfr osptokeninfo  ospfail \
	   ospaltinfo ospssl  ospstatistics osptnprobe ospaudit osptnaudit \
	   osptransids ospciscoext ospcapind ospcapcnf \
           $(SSL_OBJS)
OSPOBJS = $(addprefix $(SRCDIR)/,$(addsuffix .lo,$(OSP_OBJS)))
OSP_LIB = libosptk
OSPLIB = $(addprefix $(LIBDIR)/,$(addsuffix .la,$(OSP_LIB)))
OSPLIBLT = $(addsuffix .la,$(OSP_LIB))
OSPSTATIC = $(addsuffix .a,$(OSP_LIB))
OSPSHARED = $(addsuffix .so.$(VERSION),$(OSP_LIB))
OSPSLINK = $(addsuffix .so.$(MAJOR),$(OSP_LIB))
OSPSLIB = $(addsuffix .so,$(OSP_LIB))
OSP_DOC = osptoolkit.txt
OSPDOC = $(DEBDIR)/$(OSP_DOC)
OSP_PC = $(OSP_LIB)$(MAJOR).pc
OSPPC = $(DEBDIR)/$(OSP_PC)

# OSP Toolkit enroll application
ENR_OBJS = osptnepinit osptnepenroll osptnep osptneputil
ENROBJS = $(addprefix $(ENRDIR)/,$(addsuffix .o,$(ENR_OBJS)))
ENR_EXEC = enroll
ENREXEC = $(BINDIR)/$(ENR_EXEC)
ENR_WRAP = enroll.sh
ENRWRAP = $(BINDIR)/$(ENR_WRAP)
ENR_CONF = openssl.cnf
ENRCONF = $(BINDIR)/$(ENR_CONF)
ENR_SGML = ospenroll.sgml
ENRSGML = $(DEBDIR)/$(ENR_SGML)
ENR_MAN = ospenroll.1
ENRMAN = $(DEBDIR)/$(ENR_MAN)

# OSP Toolkit test application
EXP_OBJS = nonblocking syncque test_app
EXPOBJS = $(addprefix $(EXPDIR)/,$(addsuffix .o,$(EXP_OBJS)))
EXP_EXEC = test_app
EXPEXEC = $(BINDIR)/$(EXP_EXEC)
EXP_CONF = test.cfg
EXPCONF = $(BINDIR)/$(EXP_CONF)
EXP_SGML = osptest.sgml
EXPSGML = $(DEBDIR)/$(EXP_SGML)
EXP_MAN = osptest.1
EXPMAN = $(DEBDIR)/$(EXP_MAN)

.SUFFIXES: .lo .c 

.c.o:
	$(CC) $(CFLAGS) -o $(@) -c $(<)

.c.lo:
	libtool --mode=compile $(CC) $(CFLAGS) -o $(@) -c $(<)

build: $(OSPLIB) $(OSPPC)
$(OSPLIB): $(OSPOBJS)
	libtool --mode=link $(CC) $(GFLAGS) $(ADDFLAGS) -o $(@) $(^) \
		$(LTFLAGS) $(LDFLAGS) $(SSLLIBS) $(GENLIBS)
$(OSPPC): Makefile
	@ echo 'Building $(OSPPC) ...'
	@ ( echo 'prefix=$(INSTALL_PATH)'; \
	echo 'exec_prefix=$${prefix}'; \
	echo 'libdir=$${exec_prefix}/lib'; \
	echo 'includedir=$${prefix}/include'; \
	echo ''; \
	echo 'Name: OSPToolkit'; \
	echo 'Description: OSP shared library'; \
	echo 'Version: '$(VERSION); \
	echo 'Requires: '; \
	echo 'Libs: -L$${libdir} -losptk'; \
	echo 'Libs.private: $(SSLLIBS) $(GENLIBS)'; \
	echo 'Cflags: -I$${includedir} -I$${includedir}/osp' ) > $(OSPPC)

enroll: $(ENREXEC)
$(ENREXEC): $(ENROBJS) $(OSPLIB)
	libtool --mode=link $(CC) $(GFLAGS) $(ADDFLAGS) $(LDFLAGS) -o $(@) $(^)

test: $(EXPEXEC)
$(EXPEXEC): $(EXPOBJS) $(OSPLIB)
	libtool --mode=link $(CC) $(GFLAGS) $(ADDFLAGS) $(LDFLAGS) -o $(@) $(^)

manpages: $(ENRMAN) $(EXPMAN)
$(ENRMAN): $(ENRSGML)
	$(D2M) $(<) > $(@)
$(EXPMAN): $(EXPSGML)
	$(D2M) $(<) > $(@)

install-lib: build
	libtool --mode=install cp $(OSPLIB) $(INSTALL_PATH)/lib/
	rm -f $(INSTALL_PATH)/lib/$(OSPLIBLT)
	rm -f $(INSTALL_PATH)/lib/$(OSPSTATIC)
	rm -f $(INSTALL_PATH)/lib/$(OSPSLIB)

install-dev: build
	cp $(INCDIR)/osp/* $(INSTALL_PATH)/include/osp
	libtool --mode=install cp $(OSPLIB) $(INSTALL_PATH)/lib/
	rm -f $(INSTALL_PATH)/lib/$(OSPSHARED)
	rm -f $(INSTALL_PATH)/lib/$(OSPSLINK)
	cp $(OSPPC) $(PC_PATH)
	chmod 644 $(PC_PATH)/$(OSP_PC)

install-bin: enroll test manpages
	libtool --mode=install cp $(ENREXEC) $(INSTALL_PATH)/lib/osp/
	cp $(ENRWRAP) $(INSTALL_PATH)/lib/osp/
	cp $(ENRCONF) $(CONFIG_PATH)/osp/
	cp $(ENRMAN) $(INSTALL_PATH)/share/man/man1/
	libtool --mode=install cp $(EXPEXEC) $(INSTALL_PATH)/lib/osp/
	cp $(EXPCONF) $(CONFIG_PATH)/osp/
	cp $(EXPMAN) $(INSTALL_PATH)/share/man/man1/
	cp $(OSPDOC) $(INSTALL_PATH)/share/doc/osptoolkit/

clean:
	libtool --mode=clean rm -f $(OSPLIB) $(OSPOBJS)
	libtool --mode=clean rm -f $(ENREXEC) $(ENROBJS)
	libtool --mode=clean rm -f $(EXPEXEC) $(EXPOBJS)
	rm -f $(ENRMAN) $(EXPMAN) $(OSPPC)