Makefile revision 911
619bd403265ce0880989ba6f8324b010949851bcSumit Bose###############################################################################
619bd403265ce0880989ba6f8324b010949851bcSumit Bose#
619bd403265ce0880989ba6f8324b010949851bcSumit Bose# synergy 1.x Makefile
619bd403265ce0880989ba6f8324b010949851bcSumit Bose#
619bd403265ce0880989ba6f8324b010949851bcSumit Bose# Copyright 2010 Sun Microsystems, Inc. All rights reserved.
619bd403265ce0880989ba6f8324b010949851bcSumit Bose# Use is subject to license terms.
619bd403265ce0880989ba6f8324b010949851bcSumit Bose#
619bd403265ce0880989ba6f8324b010949851bcSumit Bose# Permission is hereby granted, free of charge, to any person obtaining a
619bd403265ce0880989ba6f8324b010949851bcSumit Bose# copy of this software and associated documentation files (the
619bd403265ce0880989ba6f8324b010949851bcSumit Bose# "Software"), to deal in the Software without restriction, including
619bd403265ce0880989ba6f8324b010949851bcSumit Bose# without limitation the rights to use, copy, modify, merge, publish,
619bd403265ce0880989ba6f8324b010949851bcSumit Bose# distribute, and/or sell copies of the Software, and to permit persons
619bd403265ce0880989ba6f8324b010949851bcSumit Bose# to whom the Software is furnished to do so, provided that the above
619bd403265ce0880989ba6f8324b010949851bcSumit Bose# copyright notice(s) and this permission notice appear in all copies of
619bd403265ce0880989ba6f8324b010949851bcSumit Bose# the Software and that both the above copyright notice(s) and this
619bd403265ce0880989ba6f8324b010949851bcSumit Bose# permission notice appear in supporting documentation.
619bd403265ce0880989ba6f8324b010949851bcSumit Bose#
619bd403265ce0880989ba6f8324b010949851bcSumit Bose# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
619bd403265ce0880989ba6f8324b010949851bcSumit Bose# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
619bd403265ce0880989ba6f8324b010949851bcSumit Bose# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
619bd403265ce0880989ba6f8324b010949851bcSumit Bose# OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
619bd403265ce0880989ba6f8324b010949851bcSumit Bose# HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL
619bd403265ce0880989ba6f8324b010949851bcSumit Bose# INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING
619bd403265ce0880989ba6f8324b010949851bcSumit Bose# FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
619bd403265ce0880989ba6f8324b010949851bcSumit Bose# NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
619bd403265ce0880989ba6f8324b010949851bcSumit Bose# WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
619bd403265ce0880989ba6f8324b010949851bcSumit Bose#
619bd403265ce0880989ba6f8324b010949851bcSumit Bose# Except as contained in this notice, the name of a copyright holder
619bd403265ce0880989ba6f8324b010949851bcSumit Bose# shall not be used in advertising or otherwise to promote the sale, use
619bd403265ce0880989ba6f8324b010949851bcSumit Bose# or other dealings in this Software without prior written authorization
619bd403265ce0880989ba6f8324b010949851bcSumit Bose# of the copyright holder.
619bd403265ce0880989ba6f8324b010949851bcSumit Bose#
7d9f54f5ec7c72336c4f69dbf20d55f1f64b88d2Jan Zeleny#
619bd403265ce0880989ba6f8324b010949851bcSumit Bose
619bd403265ce0880989ba6f8324b010949851bcSumit Bose# Package name used in tarballs
619bd403265ce0880989ba6f8324b010949851bcSumit BoseMODULE_NAME=synergy
619bd403265ce0880989ba6f8324b010949851bcSumit Bose
619bd403265ce0880989ba6f8324b010949851bcSumit Bose# Version number (used in path names)
619bd403265ce0880989ba6f8324b010949851bcSumit BoseMODULE_VERSION=1.3.1
619bd403265ce0880989ba6f8324b010949851bcSumit Bose
a530a96721d8106a6839b6b643b0abc5d7a7b9e0Sumit Bose# Checksums for upstream tarball
619bd403265ce0880989ba6f8324b010949851bcSumit BoseTARBALL_MD5 = a6e09d6b71cb217f23069980060abf27
619bd403265ce0880989ba6f8324b010949851bcSumit BoseTARBALL_SHA1 = 03113ec8aadfecaeba8e369b083f4fb5b44f5c62
619bd403265ce0880989ba6f8324b010949851bcSumit Bose
619bd403265ce0880989ba6f8324b010949851bcSumit Bose# Where to install synergy files
619bd403265ce0880989ba6f8324b010949851bcSumit BoseMODULE_PREFIX=/usr
619bd403265ce0880989ba6f8324b010949851bcSumit BoseMODULE_PREFIX_SET=yes
619bd403265ce0880989ba6f8324b010949851bcSumit Bose
619bd403265ce0880989ba6f8324b010949851bcSumit Bose# Source tarball
619bd403265ce0880989ba6f8324b010949851bcSumit BoseSOURCE_TARBALL_NAME=synergy-$(MODULE_VERSION).tar.gz
619bd403265ce0880989ba6f8324b010949851bcSumit BoseSOURCE_TARBALL_NAME_SET=yes
7d9f54f5ec7c72336c4f69dbf20d55f1f64b88d2Jan ZelenySOURCE_UNCOMPRESS=gzcat
7d9f54f5ec7c72336c4f69dbf20d55f1f64b88d2Jan ZelenySOURCE_UNCOMPRESS_SET=yes
7d9f54f5ec7c72336c4f69dbf20d55f1f64b88d2Jan Zeleny
619bd403265ce0880989ba6f8324b010949851bcSumit Bose# Binaries built in tree
7d9f54f5ec7c72336c4f69dbf20d55f1f64b88d2Jan ZelenySYNERGYS_BIN=$(SOURCE_DIR)/cmd/synergys/synergys
619bd403265ce0880989ba6f8324b010949851bcSumit BoseSYNERGYC_BIN=$(SOURCE_DIR)/cmd/synergyc/synergyc
619bd403265ce0880989ba6f8324b010949851bcSumit Bose
619bd403265ce0880989ba6f8324b010949851bcSumit BoseSYNERGY_DOC=$(SOURCE_DIR)/doc
619bd403265ce0880989ba6f8324b010949851bcSumit Bose
619bd403265ce0880989ba6f8324b010949851bcSumit BoseINSTALL_TARGETS=install_synergys install_synergyc install_doc
7d9f54f5ec7c72336c4f69dbf20d55f1f64b88d2Jan ZelenyINSTALL_TARGETS_SET=yes
85e8cbdd79359ae1f330c8b84f7b58d4fc6fda6eStephen Gallagher
619bd403265ce0880989ba6f8324b010949851bcSumit BoseSOURCE_URL=$(SF_DOWNLOADS_URL)/synergy2/$(SOURCE_TARBALL_NAME)
619bd403265ce0880989ba6f8324b010949851bcSumit BoseSOURCE_URL_SET=yes
7d9f54f5ec7c72336c4f69dbf20d55f1f64b88d2Jan Zeleny
619bd403265ce0880989ba6f8324b010949851bcSumit Bose# Patches to apply to source after unpacking, in order
619bd403265ce0880989ba6f8324b010949851bcSumit BoseSOURCE_PATCHES = \
619bd403265ce0880989ba6f8324b010949851bcSumit Bose configure.patch \
619bd403265ce0880989ba6f8324b010949851bcSumit Bose CConfig.h.patch \
619bd403265ce0880989ba6f8324b010949851bcSumit Bose CConfig.cpp.patch \
619bd403265ce0880989ba6f8324b010949851bcSumit Bose CKeyMap.cpp.patch \
619bd403265ce0880989ba6f8324b010949851bcSumit Bose CKeyState.cpp.patch \
619bd403265ce0880989ba6f8324b010949851bcSumit Bose CXWindowsClipboard.cpp.patch \
619bd403265ce0880989ba6f8324b010949851bcSumit Bose CXWindowsClipboard.h.patch \
619bd403265ce0880989ba6f8324b010949851bcSumit Bose CXWindowsKeyState.cpp.patch \
619bd403265ce0880989ba6f8324b010949851bcSumit Bose CXWindowsScreen.cpp.patch \
619bd403265ce0880989ba6f8324b010949851bcSumit Bose CArchConsoleUnix.cpp.patch
619bd403265ce0880989ba6f8324b010949851bcSumit Bose
619bd403265ce0880989ba6f8324b010949851bcSumit Bose# Man pages to apply Sun footer to & attributes to list
619bd403265ce0880989ba6f8324b010949851bcSumit Bose#SUNTOUCHED_MANPAGES=man/*.man
619bd403265ce0880989ba6f8324b010949851bcSumit BoseSUN_PACKAGE=SUNWsynergy
a530a96721d8106a6839b6b643b0abc5d7a7b9e0Sumit BoseMODULE_STABILITY=Committed
619bd403265ce0880989ba6f8324b010949851bcSumit Bose
85e8cbdd79359ae1f330c8b84f7b58d4fc6fda6eStephen GallagherUSE_DEFAULT_CONFIG_ENV=no
85e8cbdd79359ae1f330c8b84f7b58d4fc6fda6eStephen Gallagher
85e8cbdd79359ae1f330c8b84f7b58d4fc6fda6eStephen GallagherMODULE_CXXFLAGS = -m32
85e8cbdd79359ae1f330c8b84f7b58d4fc6fda6eStephen GallagherMODULE_CXXFLAGS += -features=except,rtti,export,extensions,nestedaccess,tmplife,tmplrefstatic
85e8cbdd79359ae1f330c8b84f7b58d4fc6fda6eStephen GallagherMODULE_CXXFLAGS += -instances=global -template=geninlinefuncs -verbose=template
619bd403265ce0880989ba6f8324b010949851bcSumit BoseMODULE_CXXFLAGS += -xlang=c99 -xbuiltin=%none
619bd403265ce0880989ba6f8324b010949851bcSumit BoseMODULE_CXXFLAGS += -Qoption ccfe -features=gcc
85e8cbdd79359ae1f330c8b84f7b58d4fc6fda6eStephen GallagherMODULE_CXXFLAGS += -Qoption ccfe -features=zla
619bd403265ce0880989ba6f8324b010949851bcSumit BoseMODULE_CXXFLAGS += -mt -D_REENTRANT -D__EXTENSIONS__ -D_LARGEFILE_SOURCE
619bd403265ce0880989ba6f8324b010949851bcSumit BoseMODULE_CXXFLAGS += -D_FILE_OFFSET_BITS=64
619bd403265ce0880989ba6f8324b010949851bcSumit BoseMODULE_CXXFLAGS += -D_XPG5 -D_XOPEN_SOURCE=500
619bd403265ce0880989ba6f8324b010949851bcSumit BoseMODULE_CXXFLAGS += -D_POSIX_PTHREAD_SEMANTICS
619bd403265ce0880989ba6f8324b010949851bcSumit BoseMODULE_CXXFLAGS += -DPIC -KPIC -DSYSAPI_UNIX=1 -DWINAPI_XWINDOWS=1
619bd403265ce0880989ba6f8324b010949851bcSumit BoseMODULE_CPPFLAGS = -DSYSAPI_UNIX=1 \
85e8cbdd79359ae1f330c8b84f7b58d4fc6fda6eStephen Gallagher -DWINAPI_XWINDOWS=1 \
619bd403265ce0880989ba6f8324b010949851bcSumit Bose -I$(PROTODIR)$(X11_INCLUDES_DIR) \
64ddff90c7fcc02ccb06824ac93af7d5f361a88fJan Zeleny -I$(PROTODIR)/usr/include \
64ddff90c7fcc02ccb06824ac93af7d5f361a88fJan Zeleny -I$(PROTODIR)/usr/include/freetype2
619bd403265ce0880989ba6f8324b010949851bcSumit BoseMODULE_LDFLAGS = -L$(PROTODIR)/usr/lib$(ARCHLIBSUBDIR) \
619bd403265ce0880989ba6f8324b010949851bcSumit Bose -L$(PROTODIR)$(X11_DIR)/lib$(ARCHLIBSUBDIR) \
7d9f54f5ec7c72336c4f69dbf20d55f1f64b88d2Jan Zeleny -R$(X11_DIR)/lib$(ARCHLIBSUBDIR) \
619bd403265ce0880989ba6f8324b010949851bcSumit Bose -KPIC -Bdynamic -lc -lCrun -lCstd -lm \
619bd403265ce0880989ba6f8324b010949851bcSumit Bose -lsocket -lnsl -lgen -z combreloc -z ignore
619bd403265ce0880989ba6f8324b010949851bcSumit BoseINSTALL = /usr/bin/ginstall -c
619bd403265ce0880989ba6f8324b010949851bcSumit BoseMODULE_MAKE=$(GNUMAKE)
619bd403265ce0880989ba6f8324b010949851bcSumit BoseMODULE_MAKE_SET=yes
619bd403265ce0880989ba6f8324b010949851bcSumit BoseLD_OPTIONS = -lc -lCrun -lCstd -lm -lsocket -lnsl -lgen -z combreloc -z ignore
619bd403265ce0880989ba6f8324b010949851bcSumit Bose
619bd403265ce0880989ba6f8324b010949851bcSumit BoseMODULE_ENV = \
619bd403265ce0880989ba6f8324b010949851bcSumit Bose CC="$(CC)" \
619bd403265ce0880989ba6f8324b010949851bcSumit Bose CXX="$(CXX)" \
619bd403265ce0880989ba6f8324b010949851bcSumit Bose CXXFLAGS="$(CXXFLAGS) $(MODULE_CXXFLAGS)" \
619bd403265ce0880989ba6f8324b010949851bcSumit Bose CPPFLAGS="$(MODULE_CPPFLAGS)" \
7d9f54f5ec7c72336c4f69dbf20d55f1f64b88d2Jan Zeleny CPP="$(CC) -E $(MODULE_CPPFLAGS) $(CPPFLAGS)" \
619bd403265ce0880989ba6f8324b010949851bcSumit Bose CXXCPP="$(CXX) -E $(MODULE_CPPFLAGS) $(CPPFLAGS) $(CXXFLAGS)" \
7d9f54f5ec7c72336c4f69dbf20d55f1f64b88d2Jan Zeleny LDFLAGS="$(MODULE_LDFLAGS)" \
7d9f54f5ec7c72336c4f69dbf20d55f1f64b88d2Jan Zeleny LD="$(CXX) $(CXXFLAGS) $(LDFLAGS)" \
619bd403265ce0880989ba6f8324b010949851bcSumit Bose CXXLD="$(CXX) $(CXXFLAGS) $(LDFLAGS)" \
619bd403265ce0880989ba6f8324b010949851bcSumit Bose INSTALL="$(INSTALL)" \
619bd403265ce0880989ba6f8324b010949851bcSumit Bose MAKE=$(GNUMAKE) \
619bd403265ce0880989ba6f8324b010949851bcSumit Bose GNUMAKE=$(GNUMAKE) \
619bd403265ce0880989ba6f8324b010949851bcSumit Bose LD_OPTIONS="$(LD_OPTIONS)"
619bd403265ce0880989ba6f8324b010949851bcSumit Bose
619bd403265ce0880989ba6f8324b010949851bcSumit BoseMODULE_CONFIG_ENV = $(MODULE_ENV)
619bd403265ce0880989ba6f8324b010949851bcSumit BoseMODULE_BUILD_ENV = $(CONFIG_ENV)
7d9f54f5ec7c72336c4f69dbf20d55f1f64b88d2Jan Zeleny
619bd403265ce0880989ba6f8324b010949851bcSumit Boseinclude ../Makefile.inc
619bd403265ce0880989ba6f8324b010949851bcSumit Bose
619bd403265ce0880989ba6f8324b010949851bcSumit BoseDESTDIR=$(PROTODIR)
7d9f54f5ec7c72336c4f69dbf20d55f1f64b88d2Jan Zeleny
619bd403265ce0880989ba6f8324b010949851bcSumit Boseinstall_synergys: $(SYNERGYS_BIN)
619bd403265ce0880989ba6f8324b010949851bcSumit Bose mkdir -p $(DESTDIR)$(MODULE_PREFIX)/bin
619bd403265ce0880989ba6f8324b010949851bcSumit Bose cp -pf $(SYNERGYS_BIN) $(DESTDIR)$(MODULE_PREFIX)/bin
7d9f54f5ec7c72336c4f69dbf20d55f1f64b88d2Jan Zeleny
7d9f54f5ec7c72336c4f69dbf20d55f1f64b88d2Jan Zelenyinstall_synergyc: $(SYNERGYC_BIN)
619bd403265ce0880989ba6f8324b010949851bcSumit Bose mkdir -p $(DESTDIR)$(MODULE_PREFIX)/bin
619bd403265ce0880989ba6f8324b010949851bcSumit Bose cp -pf $(SYNERGYC_BIN) $(DESTDIR)$(MODULE_PREFIX)/bin
619bd403265ce0880989ba6f8324b010949851bcSumit Bose
619bd403265ce0880989ba6f8324b010949851bcSumit BoseDOC_AREA=$(DESTDIR)$(MODULE_PREFIX)/share/doc/synergy
619bd403265ce0880989ba6f8324b010949851bcSumit Bose
619bd403265ce0880989ba6f8324b010949851bcSumit Bose# Doc all in html format
619bd403265ce0880989ba6f8324b010949851bcSumit Boseinstall_doc:
619bd403265ce0880989ba6f8324b010949851bcSumit Bose mkdir -p $(DOC_AREA)
619bd403265ce0880989ba6f8324b010949851bcSumit Bose mkdir -p $(DOC_AREA)/images
619bd403265ce0880989ba6f8324b010949851bcSumit Bose cp -pf $(SYNERGY_DOC)/about.html $(DOC_AREA)
619bd403265ce0880989ba6f8324b010949851bcSumit Bose cp -pf $(SYNERGY_DOC)/authors.html $(DOC_AREA)
619bd403265ce0880989ba6f8324b010949851bcSumit Bose cp -pf $(SYNERGY_DOC)/autostart.html $(DOC_AREA)
619bd403265ce0880989ba6f8324b010949851bcSumit Bose cp -pf $(SYNERGY_DOC)/banner.html $(DOC_AREA)
619bd403265ce0880989ba6f8324b010949851bcSumit Bose cp -pf $(SYNERGY_DOC)/border.html $(DOC_AREA)
619bd403265ce0880989ba6f8324b010949851bcSumit Bose cp -pf $(SYNERGY_DOC)/compiling.html $(DOC_AREA)
fd94a375467ade9233e34513863571fc51fec2edStephen Gallagher cp -pf $(SYNERGY_DOC)/configuration.html $(DOC_AREA)
619bd403265ce0880989ba6f8324b010949851bcSumit Bose cp -pf $(SYNERGY_DOC)/contact.html $(DOC_AREA)
a530a96721d8106a6839b6b643b0abc5d7a7b9e0Sumit Bose cp -pf $(SYNERGY_DOC)/developer.html $(DOC_AREA)
a530a96721d8106a6839b6b643b0abc5d7a7b9e0Sumit Bose cp -pf $(SYNERGY_DOC)/faq.html $(DOC_AREA)
619bd403265ce0880989ba6f8324b010949851bcSumit Bose cp -pf $(SYNERGY_DOC)/history.html $(DOC_AREA)
619bd403265ce0880989ba6f8324b010949851bcSumit Bose cp -pf $(SYNERGY_DOC)/home.html $(DOC_AREA)
619bd403265ce0880989ba6f8324b010949851bcSumit Bose cp -pf $(SYNERGY_DOC)/index.html $(DOC_AREA)
619bd403265ce0880989ba6f8324b010949851bcSumit Bose cp -pf $(SYNERGY_DOC)/license.html $(DOC_AREA)
7d9f54f5ec7c72336c4f69dbf20d55f1f64b88d2Jan Zeleny cp -pf $(SYNERGY_DOC)/news.html $(DOC_AREA)
619bd403265ce0880989ba6f8324b010949851bcSumit Bose cp -pf $(SYNERGY_DOC)/roadmap.html $(DOC_AREA)
619bd403265ce0880989ba6f8324b010949851bcSumit Bose cp -pf $(SYNERGY_DOC)/running.html $(DOC_AREA)
619bd403265ce0880989ba6f8324b010949851bcSumit Bose cp -pf $(SYNERGY_DOC)/security.html $(DOC_AREA)
619bd403265ce0880989ba6f8324b010949851bcSumit Bose cp -pf $(SYNERGY_DOC)/tips.html $(DOC_AREA)
7d9f54f5ec7c72336c4f69dbf20d55f1f64b88d2Jan Zeleny cp -pf $(SYNERGY_DOC)/toc.html $(DOC_AREA)
619bd403265ce0880989ba6f8324b010949851bcSumit Bose cp -pf $(SYNERGY_DOC)/trouble.html $(DOC_AREA)
619bd403265ce0880989ba6f8324b010949851bcSumit Bose cp -pf $(SYNERGY_DOC)/images/logo.gif $(DOC_AREA)/images
619bd403265ce0880989ba6f8324b010949851bcSumit Bose cp -pf $(SYNERGY_DOC)/images/warp.gif $(DOC_AREA)/images
7d9f54f5ec7c72336c4f69dbf20d55f1f64b88d2Jan Zeleny