1# 2# CDDL HEADER START 3# 4# The contents of this file are subject to the terms of the 5# Common Development and Distribution License, Version 1.0 only 6# (the "License"). You may not use this file except in compliance 7# with the License. 8# 9# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10# or http://www.opensolaris.org/os/licensing. 11# See the License for the specific language governing permissions 12# and limitations under the License. 13# 14# When distributing Covered Code, include this CDDL HEADER in each 15# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16# If applicable, add the following below this CDDL HEADER, with the 17# fields enclosed by brackets "[]" replaced with your own identifying 18# information: Portions Copyright [yyyy] [name of copyright owner] 19# 20# CDDL HEADER END 21# 22# 23#ident "%Z%%M% %I% %E% SMI" 24# 25# Copyright 1999-2002 Sun Microsystems, Inc. All rights reserved. 26# Use is subject to license terms. 27# 28# Makefile configuration for SLP. 29 30# The SLP Java package 31 32PKGPATH=com/sun/slp 33PKGNAME=com.sun.slp 34 35# The SLP directories. 36 37SLPDIR=$(SRC)/lib/libslp 38DOC=$(SLPDIR)/javadoc 39CLASSES=$(SLPDIR)/classes 40SLPJAVASRC=$(SLPDIR)/javalib 41 42# SLP jar file, its ultimate destination, and packaging details 43SLPJAR=slp.jar 44SLPDJAR=slpd.jar 45JARDESTDIR=$(ROOT)/usr/share/lib/slp 46INSJARS=$(JARDESTDIR)/$(SLPJAR) $(JARDESTDIR)/$(SLPDJAR) 47 48$(JARDESTDIR)/%: $(CLASSES)/% 49 $(INS.file) 50 51# Manifest files 52SLPMANI= $(CLASSES)/manifest.slp 53SLPDMANI= $(CLASSES)/manifest.slpd 54 55MANIFESTS= $(SLPMANI) $(SLPDMANI) 56 57# Controlled CLASSPATH for making 58SLPCLASSPATH=$(CLASSES):$(SLPJAVASRC) 59 60# javac flags 61JFLAGS= -O -d $(CLASSES) -sourcepath $(SLPCLASSPATH) -deprecation 62 63# The default make rule for Java files 64COMPILE.java=$(JAVAC) $(JFLAGS) 65 66$(CLASSES)/$(PKGPATH)/%.class: $(SLPJAVASRC)/$(PKGPATH)/%.java 67 $(COMPILE.java) $< 68 69# Where to put the message files 70MSGDIR = $(ROOT)/usr/share/lib/locale/$(PKGPATH) 71MSGDIRS = $(ROOT)/usr/share/lib/locale \ 72 $(ROOT)/usr/share/lib/locale/com \ 73 $(ROOT)/usr/share/lib/locale/com/sun \ 74 $(MSGDIR) 75CLIENT_MSGS=ClientLib_en.properties 76SERVER_MSGS=Server_en.properties 77MSGFILES=$(MSGDIR)/$(CLIENT_MSGS) $(MSGDIR)/$(SERVER_MSGS) 78 79$(MSGFILES) := OWNER = root 80$(MSGFILES) := GROUP = sys 81 82$(JARDESTDIR)/$(SLPJAR) := OWNER = root 83$(JARDESTDIR)/$(SLPJAR) := GROUP = sys 84 85$(JARDESTDIR)/$(SLPDJAR) := OWNER = root 86$(JARDESTDIR)/$(SLPDJAR) := GROUP = sys 87$(JARDESTDIR)/$(SLPDJAR) := FILEMODE = 600 88 89 90# All SLP classes, not including internal classes (since these are 91# generated and packaged automatically buy this Makefile). Since 92# we take advantage of -Xdepend, the strategy is to place trigger 93# classes at the beginning of the list; these will trigger javac to 94# compile all other classes. 95SLP_CLASSES=\ 96UARequester.class SARequester.class slpd.class \ 97SunServerDATable.class AttributeVerifier.class \ 98SunDATable.class SLPHeaderV2.class SLPServerHeaderV2.class \ 99SLPHeaderV1.class SLPV1Manager.class Syslog.class \ 100StderrLog.class SLPDgui.class \ 101ServiceLocationException.class ServiceLocationEnumeration.class \ 102ServiceLocationEnumerator.class Assert.class \ 103ServiceType.class ServiceURL.class \ 104ServiceLocationAttribute.class ServerAttribute.class \ 105AttributeString.class AttributePattern.class \ 106Opaque.class AuthBlock.class \ 107Defaults.class SLPConfig.class \ 108SrvLocMsg.class SrvLocHeader.class\ 109SrvLocMsgImpl.class CAttrMsg.class \ 110SAttrMsg.class CDAAdvert.class \ 111SDAAdvert.class CSAAdvert.class \ 112SSAAdvert.class CSrvMsg.class \ 113SSrvMsg.class CSrvTypeMsg.class \ 114SSrvTypeMsg.class CSrvReg.class \ 115SSrvReg.class CSrvDereg.class \ 116SSrvDereg.class DATable.class \ 117ServiceStore.class ServiceStoreFactory.class \ 118ServiceTable.class ServiceStoreInMemory.class \ 119Advertiser.class Locator.class \ 120ServiceLocationManager.class PermSARegTable.class \ 121DAAdvertiser.class ServerDATable.class \ 122Listener.class StreamListener.class \ 123RequestHandler.class Transact.class \ 124SLPV1SAttrMsg.class SLPV1SDAAdvert.class \ 125SLPV1SSrvDereg.class SLPV1SSrvMsg.class \ 126SLPV1SSrvReg.class SLPV1SSrvTypeMsg.class \ 127ServiceLocationAttributeV1.class ServiceURLV1.class \ 128SLPTemplateRegistry.class ActiveDiscoverer.class \ 129AttributeDescriptor.class ClientMsgManager.class \ 130IANACharCode.class Parser.class \ 131ServiceLocationAttributeVerifier.class SLPV1CDAAdvert.class \ 132URLAttributeVerifier.class TemplateRegistry.class \ 133ServiceLocationAttributeDescriptor.class \ 134SLPTokenizer.class 135 136# This is a hand-crafted subset of classes that are needed for slp.jar. 137# We take the extra effort here so that customers don't need to pull 138# in slpd.jar, which is more than double the size of slp.jar, when 139# they will only need these classes. 140UA_SA_SUBSET_CLASSES_ORIG=\ 141Advertiser.class Assert.class AttributeString.class \ 142AuthBlock.class CAttrMsg.class CDAAdvert.class \ 143CSAAdvert.class CSrvDereg.class CSrvMsg.class \ 144CSrvReg.class CSrvTypeMsg.class DATable\$$DARecord.class \ 145SLPHeaderV2.class SrvLocHeader.class SrvLocMsgImpl.class \ 146DATable.class Defaults.class \ 147Locator.class Opaque.class PermSARegTable.class \ 148SARequester.class SLPConfig.class Syslog.class \ 149ServiceURL.class SrvLocMsg.class Transact.class \ 150ServerAttribute.class ServiceLocationAttribute.class \ 151ServiceLocationEnumeration.class ServiceLocationEnumerator.class \ 152ServiceLocationException.class ServiceType.class \ 153UARequester.class ServiceLocationManager.class \ 154SunDATable.class TemplateRegistry.class SLPTemplateRegistry.class \ 155ServiceLocationAttributeVerifier.class AttributeVerifier.class \ 156ServiceLocationAttributeDescriptor.class AttributeDescriptor.class \ 157URLAttributeVerifier.class StderrLog.class \ 158StderrLog.class SLPConfig\$$SLPProperties.class \ 159SLPHeaderV2\$$OptionParser.class SLPHeaderV2\$$SLPOption.class \ 160SLPTokenizer.class 161 162ALL_SLP_CLASSES=${SLP_CLASSES:%=$(CLASSES)/$(PKGPATH)/%} 163UA_SA_SUBSET_CLASSES=${UA_SA_SUBSET_CLASSES_ORIG:%=$(PKGPATH)/%} 164