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 (the "License"). 6 # You may not use this file except in compliance with the License. 7 # 8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9 # or http://www.opensolaris.org/os/licensing. 10 # See the License for the specific language governing permissions 11 # and limitations under the License. 12 # 13 # When distributing Covered Code, include this CDDL HEADER in each 14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15 # If applicable, add the following below this CDDL HEADER, with the 16 # fields enclosed by brackets "[]" replaced with your own identifying 17 # information: Portions Copyright [yyyy] [name of copyright owner] 18 # 19 # CDDL HEADER END 20 # 21 # 22 # Copyright 2009 Sun Microsystems, Inc. All rights reserved. 23 # Use is subject to license terms. 24 # 25 # cmd/pools/poold/Makefile 26 27 PROG = poold 28 OBJS = poold.o 29 SRCS = $(OBJS:%.o=%.c) 30 31 MANIFEST= poold.xml 32 SVCMETHOD= svc-poold 33 34 include $(SRC)/cmd/Makefile.cmd 35 $(BLD_JAVA_8)include $(SRC)/cmd/Makefile.cmd.64 36 37 JAVA_SUBDIRS = com/sun/solaris/service/exception \ 38 com/sun/solaris/service/kstat \ 39 com/sun/solaris/service/locality \ 40 com/sun/solaris/service/logging \ 41 com/sun/solaris/service/pools \ 42 com/sun/solaris/service/timer \ 43 com/sun/solaris/domain/pools 44 45 SUBDIRS = libjkstat \ 46 libjlgrp \ 47 libjpool \ 48 libjsyslog 49 50 ROOTMANIFESTDIR= $(ROOTSVCSYSTEM) 51 52 all := TARGET = all 53 install := TARGET = install 54 clean := TARGET = clean 55 clobber := TARGET = clobber 56 lint := TARGET = lint 57 msg := TARGET = msg 58 59 $(ROOTMANIFEST):= FILEMODE= 444 60 JARFILE = JPool.jar 61 62 JAVA_LIB_PATH = $(JAVA_ROOT)/jre/lib/$(MACH)/client 63 LIBPOOL_PATH = $(ROOTLIB) 64 $(BLD_JAVA_8)JAVA_LIB_PATH = $(JAVA_ROOT)/jre/lib/$(MACH64)/server 65 $(BLD_JAVA_8)LIBPOOL_PATH = $(ROOTLIB64) 66 67 # JAVA_SUBDIRS and PACKAGEDOCS must be synchronized to ensure 68 # javadoc documentation is generated for all packages. 69 70 PACKAGEDOCS = com.sun.solaris.service.exception \ 71 com.sun.solaris.service.kstat \ 72 com.sun.solaris.service.locality \ 73 com.sun.solaris.service.logging \ 74 com.sun.solaris.service.pools \ 75 com.sun.solaris.service.timer \ 76 com.sun.solaris.domain.pools 77 DOCDIR = doc 78 ROOTUSRLIBDRP = $(ROOTLIB)/pool 79 INCS = -I../common \ 80 -I$(JAVA_ROOT)/include \ 81 -I$(JAVA_ROOT)/include/solaris 82 LDLIBS += -lpool -L$(JAVA_LIB_PATH) -ljvm 83 # runpath should point to runtime JAVA_HOME 84 LDFLAGS += -R$(JAVA_LIB_PATH) 85 86 LINTFLAGS += -erroff=E_NAME_USED_NOT_DEF2 87 $(BLD_JAVA_8)LINTFLAGS64 += -erroff=E_NAME_USED_NOT_DEF2 88 LINTLIBS += -L$(LIBPOOL_PATH) -lpool 89 90 CPPFLAGS += $(INCS) 91 ROOTCMDDIR = $(ROOT)/usr/lib/pool 92 93 CLOBBERFILES += $(JARFILE) 94 95 # 96 # Definitions for message catalogue 97 # 98 POFILES = $(OBJS:.o=.po) 99 100 # 101 # Definitions for Java installs 102 # 103 104 JFILES = poold.properties $(JARFILE) 105 ROOTJAVA = $(JFILES:%=$(ROOTUSRLIBDRP)/%) 106 107 $(ROOTJAVA) := FILEMODE = 444 108 109 all: $(PROG) $(JAVA_SUBDIRS) $(JARFILE) \ 110 .WAIT $(SUBDIRS) 111 112 clean : $(JAVA_SUBDIRS) $(SUBDIRS) clean_local 113 clean_local: 114 $(RM) $(OBJS) 115 116 clobber : $(JAVA_SUBDIRS) $(SUBDIRS) clobber_local 117 clobber_local: clean_local 118 $(RM) $(CLOBBERFILES) 119 120 lint: $(SUBDIRS) 121 122 msg: $(POFILES) 123 124 install: $(ROOTCMD) $(JAVA_SUBDIRS) $(JARFILE) \ 125 .WAIT $(SUBDIRS) $(ROOTJAVA) $(ROOTMANIFEST) \ 126 $(ROOTSVCMETHOD) 127 128 check: $(CHKMANIFEST) 129 130 $(JAVA_SUBDIRS): FRC 131 @cd $@; pwd; $(MAKE) $(TARGET) 132 if [ "$(TARGET)" != "clean" ] && [ "$(TARGET)" != "clobber" ]; \ 133 then \ 134 if [ ! -f $(JARFILE) ]; \ 135 then \ 136 $(JAR) -cf $(JARFILE) $@/*class; \ 137 else \ 138 $(JAR) -uf $(JARFILE) $@/*class; \ 139 fi \ 140 fi 141 142 $(SUBDIRS): FRC 143 @cd $@; pwd; $(MAKE) $(TARGET) 144 145 doc: all 146 $(JAVADOC) -private -classpath $(JARFILE): -sourcepath . \ 147 -source 1.4 -d $(DOCDIR) $(PACKAGEDOCS) 148 149 $(PROG): $(OBJS) 150 $(LINK.c) -o $(PROG) $(OBJS) $(LDLIBS) 151 $(POST_PROCESS) 152 153 $(ROOTUSRLIBDRP)/%: % 154 $(INS.file) 155 156 FRC: 157 158 lint: 159 $(LINT.c) $(PROG).c $(LINTLIBS) 160 161 include $(SRC)/cmd/Makefile.targ