6811333 Remove prom_printf() message in emlxs driver
[opensolaris.git] / usr / src / lib / libnisdb / Makefile
blob96066c55fd7fc5ccce76d0f17956adcdbfc3a4de
2 # CDDL HEADER START
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.
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.
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]
19 # CDDL HEADER END
22 # Copyright 2008 Sun Microsystems, Inc. All rights reserved.
23 # Use is subject to license terms.
25 # ident "%Z%%M% %I% %E% SMI"
28 LIBRARY= libnisdb.a
29 VERS= .2
30 PROTOCOL_DIR= $(ROOT)/include/rpcsvc
31 YPTOL_DIR= ./yptol
33 SED= sed
35 OBJECTS = \
36 db_entry.o db_entry_c_xdr.o \
37 db_item.o db_item_c_xdr.o \
38 db_vers.o db_vers_c_xdr.o \
39 db_pickle.o \
40 db_table.o db_table_c_xdr.o \
41 db_index_entry.o db_index_entry_c.o \
42 db_index.o db_index_c_xdr.o \
43 db_scheme.o db_scheme_c_xdr.o \
44 db_query.o db_query_c_xdr.o \
45 db_mindex.o db_mindex2.o db_mindex3.o db_mindex_c_xdr.o \
46 db_log_entry.o db_log_entry_c_xdr.o \
47 db_log.o \
48 db.o \
49 xdr_nullptr.o \
50 db_dictionary.o db_dictionary_c_xdr.o \
51 db_dictxdr.o db_dictlog.o db_dictlog_c_xdr.o \
52 nis_db.o \
53 nisdb_mt.o nisdb_rw.o \
54 nis_hashitem.o nis_servlist.o \
55 ldap_attr.o ldap_cto.o ldap_glob.o ldap_ldap.o \
56 ldap_map.o ldap_nisdbquery.o ldap_nisplus.o \
57 ldap_op.o ldap_parse.o ldap_print.o ldap_ruleval.o \
58 ldap_util.o ldap_val.o ldap_xdr.o ldap_scheme.o \
59 nis_ldap.o \
60 nis_parse_ldap_attr.o nis_parse_ldap_conf.o \
61 nis_parse_ldap_map.o nis_parse_ldap_util.o \
62 nis_parse_ldap_yp_util.o \
63 dit_access.o \
64 dit_access_utils.o \
65 lock_update.o \
66 map_conv.o \
67 map_ctrl.o \
68 yptol_utils.o \
69 shim.o \
70 shim_ancil.o \
71 shim_lockmap.o \
72 ttl_utils.o \
73 update.o \
74 shim_changepasswd.o \
75 stubs.o
77 X_FILES= \
78 db_c.x db_dictionary_c.x db_entry_c.x db_index_c.x \
79 db_index_entry_c.x db_item_c.x db_log_c.x db_log_entry_c.x \
80 db_mindex_c.x db_query_c.x db_scheme_c.x db_table_c.x \
81 db_vers_c.x db_dictlog_c.x
83 DERIVED_HEADERS= $(X_FILES:%_c.x=%_c.h) $(X_FILES:%_c.x=%.h)
84 DERIVED_SOURCES= $(X_FILES:%_c.x=%_c_xdr.c)
85 DERIVED_FILES= $(DERIVED_HEADERS) $(DERIVED_SOURCES)
87 # delete the derived files when cleaning up
88 CLEANFILES += $(DERIVED_FILES)
90 # include library definitions
91 include ../Makefile.lib
93 MAPFILES = mapfile-vers
95 SRCS= db_dictionary_c_xdr.c db_dictlog_c_xdr.c db_dictxdr.c \
96 db_entry_c_xdr.c db_index_c_xdr.c db_index_entry_c_xdr.c db_item_c_xdr.c \
97 db_log_c_xdr.c db_log_entry_c_xdr.c db_mindex_c_xdr.c db_query_c_xdr.c \
98 db_scheme_c_xdr.c db_table_c_xdr.c db_vers_c_xdr.c \
99 $(YPTOL_DIR)/dit_access.c \
100 $(YPTOL_DIR)/dit_access_utils.c \
101 $(YPTOL_DIR)/lock_update.c \
102 $(YPTOL_DIR)/map_conv.c \
103 $(YPTOL_DIR)/map_ctrl.c \
104 $(YPTOL_DIR)/yptol_utils.c \
105 $(YPTOL_DIR)/shim.c \
106 $(YPTOL_DIR)/shim_ancil.c \
107 $(YPTOL_DIR)/shim_lockmap.c \
108 $(YPTOL_DIR)/ttl_utils.c \
109 $(YPTOL_DIR)/update.c \
110 $(YPTOL_DIR)/shim_changepasswd.c \
111 $(YPTOL_DIR)/stubs.c \
112 #db_c_xdr.c xdr_nullptr.c
114 # Libnisdb has grown large enough that there may be too many symbols
115 # wanting `small' PIC references. Hence, compile some files with
116 # `large' PIC references; the parser files are good candidates, since
117 # they're only used at startup, and performance isn't too important.
118 LARGESYMS= nis_parse_ldap_conf.o \
119 nis_parse_ldap_attr.o \
120 nis_parse_ldap_yp_util.o \
121 nis_parse_ldap_map.o \
122 ldap_parse.o \
123 dit_access.o \
124 dit_access_utilis.o \
125 map_conv.o \
126 map_ctrl.o \
127 shim.o \
128 shim_ancil.o \
129 shim_changepasswd.o \
130 update.o \
131 stubs.o \
132 yptol_utils.o \
133 nis_parse_ldap_util.o
134 LARGEPICS= $(LARGESYMS:%=pics/%)
135 $(LARGEPICS) := sparc_C_PICFLAGS = $(C_BIGPICFLAGS)
136 $(LARGEPICS) := i386_C_PICFLAGS = $(C_BIGPICFLAGS)
138 CPPFLAGS += -D_REENTRANT
140 # Extra includes, from yp, for yptol files.
141 CPPFLAGS += -I$(SRC)/cmd/ypcmd
143 LIBS = $(DYNLIB)
144 ZDEFS=
145 LDLIBS += -lnsl -lldap -lc
147 # A number of interfaces are interposed by numerous applications, therefore
148 # prevent direct binding to anything in libnisdb. Disable libnisdb from
149 # directly binding to itself, but allow libnisdb to directly bind to its
150 # dependencies (ie. map -Bdirect -> -zdirect). Ensure lazy loading is
151 # established (which is enabled automatically with -Bdirect). In addition,
152 # libnisdb interposes on socket(), so tag this library as an interposer.
153 # dependencies (lazyload).
154 BDIRECT =
155 DYNFLAGS += $(BNODIRECT) $(ZINTERPOSE) $(ZDIRECT) $(ZLAZYLOAD)
157 all := TARGET= all
158 clean := TARGET= clean
159 clobber := TARGET= clobber
160 install := TARGET= install
161 lint := TARGET= lint
163 .KEEP_STATE:
165 all: $(DERIVED_FILES) $(LIBS)
167 install: all $(ROOTLIBS) $(ROOTLINKS)
169 lint: $(DERIVED_FILES) .WAIT lintcheck
171 pics/%.o: %.c
172 $(COMPILE.c) -o $@ $<
173 $(POST_PROCESS_O)
175 pics/%.o: %.cc
176 $(COMPILE.cc) -o $@ $<
177 $(POST_PROCESS_O)
179 objs/%.o pics/%.o profs/%.o: $(YPTOL_DIR)/%.c
180 $(COMPILE.c) -o $@ $<
181 $(POST_PROCESS_O)
184 # Pattern matching rules that define how to build the derived files.
186 %_c.h: %_c.x
187 $(RM) $@
188 $(RPCGEN) -DUSINGC -h -o $@ $<
190 %.h: %_c.x
191 $(RM) $@
192 $(RPCGEN) -h -o $@ $<
194 %_c_xdr.c: %_c.x
195 $(RM) $@
196 $(RPCGEN) -DUSINGC -c -o $@ $<
198 # rename the xdr_db_free_entry() in the db_table_c_xdr.c. So the one
199 # in db_index_entry_c is used instead.
200 DB_TABLE=db_table_c
202 $(DB_TABLE)_xdr.c: $(DB_TABLE).x
203 $(RM) $@
204 $(RPCGEN) -DUSINGC -c $(DB_TABLE).x |\
205 $(SED) -e 's/^xdr_db_free_entry(/__OBSOLETED_xdr_db_free_entry(/' > $@
207 # include library targets
208 include ../Makefile.targ