#/**************************************************************************/ #/* */ #/* Copyright (c) 2001, 2011 NoMachine (http://www.nomachine.com) */ #/* Copyright (c) 2008-2014 Oleksandr Shneyder */ #/* Copyright (c) 2014-2016 Ulrich Sibiller */ #/* Copyright (c) 2014-2016 Mihai Moldovan */ #/* Copyright (c) 2011-2016 Mike Gabriel */ #/* Copyright (c) 2015-2016 Qindel Group (http://www.qindel.com) */ #/* */ #/* NXCOMP, NX protocol compression and NX extensions to this software */ #/* are copyright of the aforementioned persons and companies. */ #/* */ #/* Redistribution and use of the present software is allowed according */ #/* to terms specified in the file LICENSE.nxcomp which comes in the */ #/* source distribution. */ #/* */ #/* All rights reserved. */ #/* */ #/* NOTE: This software has received contributions from various other */ #/* contributors, only the core maintainers and supporters are listed as */ #/* copyright holders. Please contact us, if you feel you should be listed */ #/* as copyright holder, as well. */ #/* */ #/**************************************************************************/ # # Get these values from the configure script. The # version printed by the program should be derived # from the CHANGELOG. For example we may use the # following command: # # head -n 3 CHANGELOG | grep 'nxcomp-' | cut -d '-' -f 2-3 # VERSION=@VERSION@ LIBVERSION=@LIBVERSION@ # # We would really like to enable all warnings, -Wredundant-decls, # though, gives a warning caused by pthread.h and unistd.h and # GCC 3.4 was changed in a way that it now complains about some # of the -W directives we used before (-Wmissing-declarations, # -Wnested-externs, -Wstrict-prototypes and -Wmissing-prototypes). # CXX = @CXX@ CXXFLAGS = @CXXFLAGS@ @X_CFLAGS@ @DEFS@ \ -Wall -Wpointer-arith CXXINCLUDES = CXXDEFINES = CPPFLAGS = @CPPFLAGS@ # # C programs have their own CFLAGS. # CC = @CC@ CCFLAGS = @CFLAGS@ @X_CFLAGS@ @DEFS@ \ -Wall -Wpointer-arith CCINCLUDES = CCDEFINES = LDFLAGS = @LDFLAGS@ LIBS = @LIBS@ # # Other autoconfigured settings, not used at the moment. # srcdir = @srcdir@ prefix = @prefix@ datarootdir = @datarootdir@ datadir = @datadir@ exec_prefix = @exec_prefix@ bindir = @bindir@ man1dir = @mandir@/man1 VPATH = @srcdir@ libdir = @libdir@ includedir = @includedir@ pkgconfigdir = @pkgconfigdir@ INSTALL = @INSTALL@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_LINK = cp -av DESTDIR = RM_FILE = rm -f # # This should be autodetected. # MAKEDEPEND = @MAKEDEPEND@ DEPENDINCLUDES = -I/usr/include/c++ -I/usr/include/g++ -I/usr/include/g++-3 .SUFFIXES: .cpp.c .cpp.o: $(CXX) -c $(CPPFLAGS) $(CXXFLAGS) $(CXXINCLUDES) $(CXXDEFINES) $< .c.o: $(CC) -c $(CPPFLAGS) $(CCFLAGS) $(CCINCLUDES) $(CCDEFINES) $< LIBRARY = Xcomp LIBNAME = lib$(LIBRARY) ifeq ($(shell uname),Darwin) LIBFULL = lib$(LIBRARY).$(VERSION).dylib LIBLOAD = lib$(LIBRARY).$(LIBVERSION).dylib LIBSHARED = lib$(LIBRARY).dylib COMP_VER = $(shell echo '$(VERSION)' | cut -d '.' -f 1-3) LIBFLAGS = -install_name $(libdir)/$(LIBLOAD) -compatibility_version $(LIBVERSION) -current_version $(COMP_VER) else LIBFULL = lib$(LIBRARY).so.$(VERSION) LIBLOAD = lib$(LIBRARY).so.$(LIBVERSION) LIBSHARED = lib$(LIBRARY).so LIBFLAGS = endif LIBARCHIVE = lib$(LIBRARY).a LIBCYGSHARED = cyg$(LIBRARY).dll LIBCYGARCHIVE = lib$(LIBRARY).dll.a all: depend @ALL@ MSRC = CSRC = MD5.c \ Pack.c \ Vars.c \ Version.c CXXSRC = Loop.cpp \ Children.cpp \ Control.cpp \ Misc.cpp \ Socket.cpp \ Fork.cpp \ Pipe.cpp \ List.cpp \ Keeper.cpp \ Timestamp.cpp \ Transport.cpp \ Statistics.cpp \ Auth.cpp \ Agent.cpp \ Proxy.cpp \ Channel.cpp \ Message.cpp \ Split.cpp \ ClientProxy.cpp \ ServerProxy.cpp \ OpcodeStore.cpp \ ClientStore.cpp \ ServerStore.cpp \ ChannelCache.cpp \ ClientCache.cpp \ ServerCache.cpp \ ClientChannel.cpp \ ServerChannel.cpp \ GenericChannel.cpp \ ChannelEndPoint.cpp \ ReadBuffer.cpp \ ProxyReadBuffer.cpp \ ClientReadBuffer.cpp \ ServerReadBuffer.cpp \ GenericReadBuffer.cpp \ EncodeBuffer.cpp \ DecodeBuffer.cpp \ WriteBuffer.cpp \ SequenceQueue.cpp \ IntCache.cpp \ CharCache.cpp \ XidCache.cpp \ ActionCache.cpp \ BlockCache.cpp \ BlockCacheSet.cpp \ StaticCompressor.cpp \ Unpack.cpp \ Alpha.cpp \ Colormap.cpp \ Jpeg.cpp \ Pgn.cpp \ Bitmap.cpp \ Rgb.cpp \ Rle.cpp \ Z.cpp \ ChangeProperty.cpp \ SendEvent.cpp \ ChangeGC.cpp \ CreateGC.cpp \ CreatePixmap.cpp \ SetClipRectangles.cpp \ CopyArea.cpp \ PolyLine.cpp \ PolySegment.cpp \ PolyFillRectangle.cpp \ PutImage.cpp \ TranslateCoords.cpp \ GetImage.cpp \ ClearArea.cpp \ ConfigureWindow.cpp \ PolyText8.cpp \ PolyText16.cpp \ ImageText8.cpp \ ImageText16.cpp \ PolyPoint.cpp \ PolyFillArc.cpp \ PolyArc.cpp \ FillPoly.cpp \ InternAtom.cpp \ GetProperty.cpp \ SetUnpackGeometry.cpp \ SetUnpackColormap.cpp \ SetUnpackAlpha.cpp \ PutPackedImage.cpp \ ShapeExtension.cpp \ RenderExtension.cpp \ GenericRequest.cpp \ QueryFontReply.cpp \ ListFontsReply.cpp \ GetImageReply.cpp \ GetPropertyReply.cpp \ GenericReply.cpp \ RenderGenericRequest.cpp \ RenderCreatePicture.cpp \ RenderChangePicture.cpp \ RenderFreePicture.cpp \ RenderPictureClip.cpp \ RenderPictureTransform.cpp \ RenderPictureFilter.cpp \ RenderCreateGlyphSet.cpp \ RenderFreeGlyphSet.cpp \ RenderAddGlyphs.cpp \ RenderComposite.cpp \ RenderCompositeGlyphs.cpp \ RenderFillRectangles.cpp \ RenderTrapezoids.cpp \ RenderTriangles.cpp MOBJ = $(MSRC:.c=.o) COBJ = $(CSRC:.c=.o) CXXOBJ = $(CXXSRC:.cpp=.o) $(LIBFULL): $(CXXOBJ) $(COBJ) $(CXX) -o $@ $(LDFLAGS) $(LIBFLAGS) $(CXXOBJ) $(COBJ) $(LIBS) $(LIBLOAD): $(LIBFULL) rm -f $(LIBLOAD) ln -s $(LIBFULL) $(LIBLOAD) $(LIBSHARED): $(LIBFULL) rm -f $(LIBSHARED) ln -s $(LIBFULL) $(LIBSHARED) $(LIBARCHIVE): $(CXXOBJ) $(COBJ) rm -f $(LIBARCHIVE) ar clq $(LIBARCHIVE) $(CXXOBJ) $(COBJ) ranlib $(LIBARCHIVE) $(LIBCYGSHARED): $(LIBARCHIVE) $(CC) -shared -o $(LIBCYGSHARED) \ -Wl,--out-implib=$(LIBCYGARCHIVE) \ -Wl,--export-all-symbols \ -Wl,--enable-auto-import \ -Wl,--whole-archive $(LIBARCHIVE) \ -Wl,--no-whole-archive $(LIBS) \ $(LDFLAGS) $(LIBCYGARCHIVE): $(LIBCYGSHARED) depends: depend.status depend: depend.status depend.status: if [ -n "$(MAKEDEPEND)" ] && [ -x "$(MAKEDEPEND)" ] ; then \ $(MAKEDEPEND) $(CXXINCLUDES) $(CCINCLUDES) \ $(DEPENDINCLUDES) -f Makefile $(MSRC) $(CSRC) \ $(CXXSRC) 2>/dev/null; \ fi touch depend.status install: install.bin install.lib install.man install.bin: install.lib: all ./mkinstalldirs $(DESTDIR)${libdir} ./mkinstalldirs $(DESTDIR)${includedir}/nx ./mkinstalldirs $(DESTDIR)${pkgconfigdir} $(INSTALL_DATA) $(LIBFULL) $(DESTDIR)${libdir} $(INSTALL_LINK) $(LIBLOAD) $(DESTDIR)${libdir} $(INSTALL_LINK) $(LIBSHARED) $(DESTDIR)${libdir} $(INSTALL_DATA) $(LIBARCHIVE) $(DESTDIR)${libdir} $(INSTALL_DATA) MD5.h $(DESTDIR)${includedir}/nx $(INSTALL_DATA) NX.h $(DESTDIR)${includedir}/nx $(INSTALL_DATA) NXalert.h $(DESTDIR)${includedir}/nx $(INSTALL_DATA) NXpack.h $(DESTDIR)${includedir}/nx $(INSTALL_DATA) NXproto.h $(DESTDIR)${includedir}/nx $(INSTALL_DATA) NXvars.h $(DESTDIR)${includedir}/nx $(INSTALL_DATA) nxcomp.pc $(DESTDIR)${pkgconfigdir} echo "Running ldconfig tool, this may take a while..." && ldconfig || true install.man: uninstall: uninstall.bin uninstall.lib uninstall.man uninstall.bin: uninstall.lib: $(RM_FILE) $(DESTDIR)${libdir}/$(LIBFULL) $(RM_FILE) $(DESTDIR)${libdir}/$(LIBLOAD) $(RM_FILE) $(DESTDIR)${libdir}/$(LIBSHARED) $(RM_FILE) $(DESTDIR)${libdir}/$(LIBARCHIVE) $(RM_FILE) $(DESTDIR)${includedir}/nx/NXalert.h $(RM_FILE) $(DESTDIR)${includedir}/nx/NX.h $(RM_FILE) $(DESTDIR)${includedir}/nx/NXpack.h $(RM_FILE) $(DESTDIR)${includedir}/nx/NXproto.h $(RM_FILE) $(DESTDIR)${includedir}/nx/NXvars.h $(RM_FILE) $(DESTDIR)${includedir}/nx/MD5.h $(RM_FILE) $(DESTDIR)${pkgconfigdir}/nxcomp.pc echo "Running ldconfig tool, this may take a while..." && ldconfig || true uninstall.man: clean: -rm -f *~ *.o *.bak *.orig *.rej st?????? core core.* *.out.* *.pc \ @ALL@ distclean: clean -rm -rf autom4te.cache config.status config.log \ config.cache depend.status Makefile tags configure