# # CDDL HEADER START # # The contents of this file are subject to the terms of the # Common Development and Distribution License (the "License"). # You may not use this file except in compliance with the License. # # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE # or http://www.opensolaris.org/os/licensing. # See the License for the specific language governing permissions # and limitations under the License. # # When distributing Covered Code, include this CDDL HEADER in each # file and include the License file at usr/src/OPENSOLARIS.LICENSE. # If applicable, add the following below this CDDL HEADER, with the # fields enclosed by brackets "[]" replaced with your own identifying # information: Portions Copyright [yyyy] [name of copyright owner] # # CDDL HEADER END # # # Copyright 2009 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # # Makefile configuration for SLP. # The SLP Java package PKGPATH=com/sun/slp PKGNAME=com.sun.slp # The SLP directories. SLPDIR=$(SRC)/lib/libslp DOC=$(SLPDIR)/javadoc CLASSES=$(SLPDIR)/classes SLPJAVASRC=$(SLPDIR)/javalib # SLP jar file, its ultimate destination, and packaging details SLPJAR=slp.jar SLPDJAR=slpd.jar JARDESTDIR=$(ROOT)/usr/share/lib/slp INSJARS=$(JARDESTDIR)/$(SLPJAR) $(JARDESTDIR)/$(SLPDJAR) $(JARDESTDIR)/%: $(CLASSES)/% $(INS.file) # Manifest files SLPMANI= $(CLASSES)/manifest.slp SLPDMANI= $(CLASSES)/manifest.slpd MANIFESTS= $(SLPMANI) $(SLPDMANI) # Controlled CLASSPATH for making SLPCLASSPATH=$(CLASSES):$(SLPJAVASRC) # javac flags JFLAGS= -O -d $(CLASSES) -sourcepath $(SLPCLASSPATH) JFLAGS += -source 1.6 -target 1.6 -Xlint:deprecation,-options # The default make rule for Java files COMPILE.java=$(JAVAC) $(JFLAGS) $(CLASSES)/$(PKGPATH)/%.class: $(SLPJAVASRC)/$(PKGPATH)/%.java $(COMPILE.java) $< # Where to put the message files MSGDIR = $(ROOT)/usr/share/lib/locale/$(PKGPATH) MSGDIRS = $(ROOT)/usr/share/lib/locale \ $(ROOT)/usr/share/lib/locale/com \ $(ROOT)/usr/share/lib/locale/com/sun \ $(MSGDIR) CLIENT_MSGS=ClientLib_en.properties SERVER_MSGS=Server_en.properties MSGFILES=$(MSGDIR)/$(CLIENT_MSGS) $(MSGDIR)/$(SERVER_MSGS) $(JARDESTDIR)/$(SLPDJAR) := FILEMODE = 600 # All SLP classes, not including internal classes (since these are # generated and packaged automatically buy this Makefile). Since # we take advantage of -Xdepend, the strategy is to place trigger # classes at the beginning of the list; these will trigger javac to # compile all other classes. SLP_CLASSES=\ UARequester.class SARequester.class slpd.class \ SunServerDATable.class AttributeVerifier.class \ SunDATable.class SLPHeaderV2.class SLPServerHeaderV2.class \ SLPHeaderV1.class SLPV1Manager.class Syslog.class \ StderrLog.class SLPDgui.class \ ServiceLocationException.class ServiceLocationEnumeration.class \ ServiceLocationEnumerator.class Assert.class \ ServiceType.class ServiceURL.class \ ServiceLocationAttribute.class ServerAttribute.class \ AttributeString.class AttributePattern.class \ Opaque.class AuthBlock.class \ Defaults.class SLPConfig.class \ SrvLocMsg.class SrvLocHeader.class\ SrvLocMsgImpl.class CAttrMsg.class \ SAttrMsg.class CDAAdvert.class \ SDAAdvert.class CSAAdvert.class \ SSAAdvert.class CSrvMsg.class \ SSrvMsg.class CSrvTypeMsg.class \ SSrvTypeMsg.class CSrvReg.class \ SSrvReg.class CSrvDereg.class \ SSrvDereg.class DATable.class \ ServiceStore.class ServiceStoreFactory.class \ ServiceTable.class ServiceStoreInMemory.class \ Advertiser.class Locator.class \ ServiceLocationManager.class PermSARegTable.class \ DAAdvertiser.class ServerDATable.class \ Listener.class StreamListener.class \ RequestHandler.class Transact.class \ SLPV1SAttrMsg.class SLPV1SDAAdvert.class \ SLPV1SSrvDereg.class SLPV1SSrvMsg.class \ SLPV1SSrvReg.class SLPV1SSrvTypeMsg.class \ ServiceLocationAttributeV1.class ServiceURLV1.class \ SLPTemplateRegistry.class ActiveDiscoverer.class \ AttributeDescriptor.class ClientMsgManager.class \ IANACharCode.class Parser.class \ ServiceLocationAttributeVerifier.class SLPV1CDAAdvert.class \ URLAttributeVerifier.class TemplateRegistry.class \ ServiceLocationAttributeDescriptor.class \ SLPTokenizer.class # This is a hand-crafted subset of classes that are needed for slp.jar. # We take the extra effort here so that customers don't need to pull # in slpd.jar, which is more than double the size of slp.jar, when # they will only need these classes. UA_SA_SUBSET_CLASSES_ORIG=\ Advertiser.class Assert.class AttributeString.class \ AuthBlock.class CAttrMsg.class CDAAdvert.class \ CSAAdvert.class CSrvDereg.class CSrvMsg.class \ CSrvReg.class CSrvTypeMsg.class DATable\$$DARecord.class \ SLPHeaderV2.class SrvLocHeader.class SrvLocMsgImpl.class \ DATable.class Defaults.class \ Locator.class Opaque.class PermSARegTable.class \ SARequester.class SLPConfig.class Syslog.class \ ServiceURL.class SrvLocMsg.class Transact.class \ ServerAttribute.class ServiceLocationAttribute.class \ ServiceLocationEnumeration.class ServiceLocationEnumerator.class \ ServiceLocationException.class ServiceType.class \ UARequester.class ServiceLocationManager.class \ SunDATable.class TemplateRegistry.class SLPTemplateRegistry.class \ ServiceLocationAttributeVerifier.class AttributeVerifier.class \ ServiceLocationAttributeDescriptor.class AttributeDescriptor.class \ URLAttributeVerifier.class StderrLog.class \ StderrLog.class SLPConfig\$$SLPProperties.class \ SLPHeaderV2\$$OptionParser.class SLPHeaderV2\$$SLPOption.class \ SLPTokenizer.class ALL_SLP_CLASSES=${SLP_CLASSES:%=$(CLASSES)/$(PKGPATH)/%} UA_SA_SUBSET_CLASSES=${UA_SA_SUBSET_CLASSES_ORIG:%=$(PKGPATH)/%}