Makefile revision 833
385N/A###############################################################################
385N/A#
385N/A# libdps Makefile
385N/A#
385N/A# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
385N/A# Use is subject to license terms.
385N/A#
385N/A# Permission is hereby granted, free of charge, to any person obtaining a
385N/A# copy of this software and associated documentation files (the
385N/A# "Software"), to deal in the Software without restriction, including
385N/A# without limitation the rights to use, copy, modify, merge, publish,
385N/A# distribute, and/or sell copies of the Software, and to permit persons
385N/A# to whom the Software is furnished to do so, provided that the above
385N/A# copyright notice(s) and this permission notice appear in all copies of
385N/A# the Software and that both the above copyright notice(s) and this
385N/A# permission notice appear in supporting documentation.
385N/A#
385N/A# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
407N/A# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
385N/A# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
385N/A# OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
385N/A# HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL
385N/A# INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING
385N/A# FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
385N/A# NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
385N/A# WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
385N/A#
385N/A# Except as contained in this notice, the name of a copyright holder
385N/A# shall not be used in advertising or otherwise to promote the sale, use
385N/A# or other dealings in this Software without prior written authorization
385N/A# of the copyright holder.
385N/A#
385N/A#ident "@(#)Makefile 1.3 09/11/19 SMI"
385N/A#
385N/A
385N/A REQUIREDLIBS = -lX11 -lsocket -lnsl -lc
385N/A
1327N/A# The Client Library uses definitions just like Xlib for network
385N/A# capabilities, such as TCPCONN, UNIXCONN, and DNETCONN. See
385N/A# csconndi.c and csopendi.c
385N/A
385N/A# The connection code should be rewritten to use xtrans. The STREAMSCONN
385N/A# code here needs work. For now force ConnectionFlags to be
385N/A# -DTCPCONN -DUNIXCONN
385N/A
385N/A CC = cc
1327N/A DEFINES = -DXDPS -DCSDPS -DTCPCONN -DUNIXCONN -DSVR4
385N/A DPSCPPFLAGS = $(DEFINES) -I ../include
385N/A DPSCFLAGS = -Kpic
456N/A SHLIBLDFLAGS = -G -z defs $(LDFLAGS) -R $(libdir)
385N/A CAT = cat
385N/A SED = sed
385N/A AWK = awk
385N/A SORT = sort
385N/A PSWRAP = ../pswrap/pswrap
385N/A
385N/ACOMMONOBJECTFILES = \
385N/A dpsclient.o\
385N/A dpsprintf.o\
385N/A dpsexcept.o\
385N/A dpsdict.o\
385N/A dpsabbrev.o
385N/A
434N/ACOMMONSOURCEFILES = \
385N/A dpsclient.c\
385N/A dpsprintf.c\
385N/A dpsexcept.c\
385N/A dpsdict.c\
385N/A dpsabbrev.c
385N/A
385N/AXOBJECTFILES = \
385N/A dpsXclient.o\
385N/A dpssysnames.o\
385N/A dpsXpriv.o\
385N/A XDPS.o\
385N/A dpsXcmu.o
385N/A
385N/A# dpsXtdisp.o\ - wasn't included in Solaris libdps for some reason
385N/A
1327N/AXSOURCEFILES = \
1327N/A dpsXclient.c\
385N/A dpssysnames.c\
385N/A dpsXpriv.c\
385N/A XDPS.c\
385N/A dpsXcmu.c
385N/A
385N/A# dpsXtdisp.c\ - wasn't included in Solaris libdps for some reason
385N/A
385N/AXCSDPSOBJECTFILES = \
385N/A cslibext.o\
385N/A csopendi.o\
385N/A csconndi.o\
385N/A csstartNX.o\
385N/A csfindNX.o\
385N/A cslibint.o
385N/A
385N/AXCSDPSSOURCEFILES = \
385N/A cslibext.c\
596N/A csopendi.c\
596N/A csconndi.c\
596N/A csstartNX.c\
596N/A csfindNX.c\
596N/A cslibint.c
596N/A
596N/ADPSOPSOBJECTS = \
596N/A dpsclrops.o\
596N/A dpsctrlops.o\
596N/A dpsctxtops.o\
596N/A dpsdataops.o\
596N/A dpsfontops.o\
596N/A dpsgsttops.o\
596N/A dpsioops.o\
596N/A dpsmathops.o\
596N/A dpsmtrxops.o\
596N/A dpsmiscops.o\
596N/A dpspntops.o\
596N/A dpspathops.o\
596N/A dpssysops.o\
596N/A dpswinops.o\
596N/A dpsopstack.o\
596N/A dpsXops.o\
596N/A dpsl2ops.o
596N/A
596N/APSOPSOBJECTS = \
596N/A psclrops.o\
596N/A psctrlops.o\
596N/A psctxtops.o\
1190N/A psdataops.o\
639N/A psfontops.o\
639N/A psgsttops.o\
1190N/A psioops.o\
639N/A psmathops.o\
639N/A psmtrxops.o\
639N/A psmiscops.o\
639N/A pspntops.o\
639N/A pspathops.o\
639N/A pssysops.o\
639N/A pswinops.o\
1327N/A psopstack.o\
1327N/A psXops.o\
639N/A psl2ops.o
1190N/A
639N/ADPSOPSHEADERFILES = \
639N/A dpsclrops.h\
639N/A dpsctrlops.h\
639N/A dpsctxtops.h\
639N/A dpsdataops.h\
596N/A dpsfontops.h\
596N/A dpsgsttops.h\
596N/A dpsioops.h\
596N/A dpsmathops.h\
596N/A dpsmtrxops.h\
596N/A dpsmiscops.h\
596N/A dpsopstack.h\
596N/A dpspntops.h\
596N/A dpspathops.h\
596N/A dpssysops.h\
596N/A dpswinops.h\
596N/A dpsXops.h\
596N/A dpsl2ops.h
596N/A
596N/APSOPSHEADERFILES = \
596N/A psclrops.h\
596N/A psctrlops.h\
596N/A psctxtops.h\
596N/A psdataops.h\
596N/A psfontops.h\
596N/A psgsttops.h\
596N/A psioops.h\
596N/A psmathops.h\
596N/A psmtrxops.h\
596N/A psmiscops.h\
596N/A pspntops.h\
596N/A pspathops.h\
596N/A pssysops.h\
596N/A pswinops.h\
596N/A psopstack.h\
596N/A psXops.h\
596N/A psl2ops.h
596N/A
596N/ADPSOPSCFILES = \
596N/A dpsclrops.c\
596N/A dpsctrlops.c\
596N/A dpsctxtops.c\
596N/A dpsdataops.c\
596N/A dpsfontops.c\
596N/A dpsgsttops.c\
596N/A dpsioops.c\
596N/A dpsmathops.c\
596N/A dpsmtrxops.c\
596N/A dpsmiscops.c\
596N/A dpsopstack.c\
596N/A dpspntops.c\
596N/A dpspathops.c\
596N/A dpssysops.c\
596N/A dpswinops.c\
596N/A dpsXops.c\
596N/A dpsl2ops.c
596N/A
596N/APSOPSCFILES = \
596N/A psclrops.c\
596N/A psctrlops.c\
596N/A psctxtops.c\
596N/A psdataops.c\
596N/A psfontops.c\
596N/A psgsttops.c\
596N/A psioops.c\
596N/A psmathops.c\
596N/A psmtrxops.c\
596N/A psmiscops.c\
596N/A pspntops.c\
596N/A pspathops.c\
596N/A pssysops.c\
596N/A pswinops.c\
596N/A psopstack.c\
596N/A psXops.c\
596N/A psl2ops.c
596N/A
596N/AHEADERS = psops.h dpsops.h
596N/A
596N/Aall:: $(HEADERS)
596N/A
596N/Aincludes:: $(DPSOPSCFILES) $(PSOPSCFILES) $(HEADERS)
596N/A
596N/A$(DPSOPSCFILES) $(PSOPSCFILES): $(PSWRAP)
596N/A
596N/ASRCS = \
596N/A ${COMMONSOURCEFILES} \
596N/A ${XSOURCEFILES} \
596N/A ${XCSDPSSOURCEFILES} \
596N/A ${DPSOPSCFILES} \
596N/A ${PSOPSCFILES}
596N/A
596N/AOBJS = \
596N/A ${COMMONOBJECTFILES} \
596N/A ${XOBJECTFILES} \
596N/A ${XCSDPSOBJECTFILES} \
596N/A ${DPSOPSOBJECTS} \
596N/A ${PSOPSOBJECTS}
596N/A
596N/ADERIVED_FILES = $(DPSOPSHEADERFILES) $(PSOPSHEADERFILES) \
596N/A $(DPSOPSCFILES) $(PSOPSCFILES)
596N/A
596N/A# Inspired by automake 1.11 silent rules - hides details by default
596N/A# Run make V=1 to show details
596N/ADEFAULT_V = 0
596N/AV_CC = $(V_CC_$(V))
596N/AV_CC_ = $(V_CC_$(DEFAULT_V))
596N/AV_CC_0 = @echo " CC " $@;
596N/AV_PSWRAP = $(V_PSWRAP_$(V))
596N/AV_PSWRAP_ = $(V_PSWRAP_$(DEFAULT_V))
596N/AV_PSWRAP_0 = @echo " PSWRAP" $@;
596N/AV_GEN = $(V_GEN_$(V))
596N/AV_GEN_ = $(V_GEN_$(DEFAULT_V))
596N/AV_GEN_0 = @echo " GEN " $@;
596N/A
596N/A.SUFFIXES: .psw
596N/A
596N/A.psw.c :
596N/A $(V_PSWRAP)$(PSWRAP) -a -o $*.c -h $*.h $<
596N/A
596N/A.psw.h :
596N/A $(V_PSWRAP)$(PSWRAP) -a -h $*.h $< > /dev/null
596N/A
596N/A.c.o:
596N/A $(V_CC)$(CC) $(DPSCFLAGS) $(CFLAGS) $(DPSCPPFLAGS) $(CPPFLAGS) -c $(OUTPUT_OPTION) $<
596N/A
596N/Aincludes :: $(HEADERS)
596N/Adepend :: $(DPSOPSCFILES) $(PSOPSCFILES)
596N/A
596N/Apsops.h : $(PSOPSHEADERFILES)
596N/A $(V_GEN) ${RM} $@ ; \
596N/A ${CAT} $(PSOPSHEADERFILES) |\
596N/A ${SED} -e '/^$$/D' -e '/#/D' -e '/^\//D'\
596N/A -e '/^ gener/D' -e '/^.\//D' |\
596N/A ${SORT} > .sort ; \
596N/A ${AWK} '/;/ {print; printf("\n");}' .sort > .ttt ; \
596N/A ${CAT} psname.txt header.txt psifdef.txt .ttt psendif.txt > psops.h ; \
596N/A ${RM} .sort .ttt .attt
596N/A
596N/Adpsops.h : psops.h $(DPSOPSHEADERFILES)
596N/A $(V_GEN) ${RM} $@ ; \
596N/A ${CAT} $(DPSOPSHEADERFILES) |\
596N/A ${SED} -e '/^$$/D' -e '/#/D' -e '/^\//D'\
596N/A -e '/^ gener/D' -e '/^.\//D' |\
596N/A ${SORT} > .sort ; \
596N/A ${AWK} '/;/ {print; printf("\n");}' .sort > .ttt ; \
596N/A ${CAT} dpsname.txt header.txt dpsifdef.txt .ttt dpsendif.txt > dpsops.h ; \
596N/A ${RM} .sort .ttt .attt
596N/A
596N/Aall:: ../include/DPS/psops.h ../include/DPS/dpsops.h
596N/A$(OBJS): $(HEADERS) ../include/DPS/psops.h ../include/DPS/dpsops.h
596N/A
596N/A../include/DPS/psops.h: psops.h
596N/A -${RM} $@
596N/A ln -s ../../libdps/psops.h $@
596N/A
596N/A../include/DPS/dpsops.h: dpsops.h
596N/A -${RM} $@
596N/A ln -s ../../libdps/dpsops.h $@
596N/A
596N/Aall:: $(OBJS) libdps.so.5 libdps.so
596N/A
596N/AMAPFILE = mapfile
596N/A
596N/Alibdps.so.5: $(OBJS) $(EXTRASHAREDOBJS) $(MAPFILE)
596N/A $(V_CC)$(CC) $(CDEBUGFLAGS) -o $@ -h $@ $(SHLIBLDFLAGS) -M $(MAPFILE) $(OBJS) $(EXTRASHAREDOBJS) $(REQUIREDLIBS)
385N/A
385N/Alibdps.so: libdps.so.5
385N/A -${RM} libdps.so
385N/A ln -s libdps.so.5 libdps.so
385N/A
385N/Ainstall: all
385N/A $(INSTALL) libdps.so.5 $(DESTDIR)$(libdir)/libdps.so.5
385N/A
385N/Aclean ::
385N/A ${RM} $(DERIVED_FILES) .sort .ttt .att psops.h dpsops.h *%
385N/A