Deleted Added
1#!/bin/ksh
2#
3# This file and its contents are supplied under the terms of the
4# Common Development and Distribution License ("CDDL"), version 1.0.
5# You may only use this file in accordance with the terms of version
6# 1.0 of the CDDL.
7#
8# A full copy of the text of the CDDL should have accompanied this
9# source. A copy of the CDDL is also available via the Internet at
10# http://www.illumos.org/license/CDDL.
11#
12
13#
14# Copyright 2020 Tintri by DDN, Inc. All rights reserved.
15#
16
17# Use normal make (not dmake) by default.
18make=${MAKE:-make}
19
20CLOSED_IS_PRESENT=no
21export CLOSED_IS_PRESENT
22

--- 62 unchanged lines hidden (view full) ---

85 # ... stuff under $ROOT (proto area)
86 test -d $ROOT/usr/include/sys ||
87 (cd $SRC && $make rootdirs)
88 test -f $ROOT/usr/include/sys/types.h ||
89 (cd $SRC/uts && $make -k $targ)
90 test -f $ROOT/usr/include/rpcsvc/daemon_utils.h ||
91 (cd $SRC/head && $make $targ)
92
93 # always update the sys,smbsrv headers to be safe
94 (cd $SRC/uts/common/gssapi && $make -k $targ)
95 (cd $SRC/uts/common/sys && $make -k $targ)
96 (cd $SRC/uts/common/smb && $make -k $targ)
97 (cd $SRC/uts/common/smbsrv && $make -k $targ)
98 (cd $SRC/uts/common/c2 && $make -k $targ)
99fi
100
101if [ "$targ" = lint ]
102then
103 targ=check
104 (cd $SRC/uts/common/smb && $make -k $targ)
105 (cd $SRC/uts/common/smbsrv && $make -k $targ)
106fi
107
108# Need some library headers too...
109for lib in \
110 libc \
111 libnsl \
112 libnvpair \
113 libsocket \
114 \
115 libads \
116 libbrand \
117 libbsm \
118 libcmdutils \
119 libcryptoutil \
120 libdevid \
121 libdisasm \
122 libfakekernel \
123 libgss \
124 libidmap \
125 libinetutil \
126 libipsecutil \
127 libkrb5 \
128 libmlrpc \
129 libpam \
130 libsaveargs \
131 libsec \
132 libscf \
133 libshare \
134 libsmbfs \
135 libsqlite \
136 libuutil \
137 libzfs_core \
138 libzfs \

--- 8 unchanged lines hidden (view full) ---

147################################################################
148
149do_kern() {
150 case $1 in
151 lint) targ=modlintlib ;;
152 *) targ=$1 ;;
153 esac
154 ( unset SOURCEDEBUG ;
155 (cd $SRC/uts/$x/smbsrv && $make $targ) )
156}
157
158################################################################
159#
160# Build all libraries used by the other targets in here.
161#
162# Run this once (at least) in each new workspace where you
163# will run "make-smbsrv install", if you want to avoid linking
164# against the libraries from your build host.
165#
166do_deplibs() {
167
168(cd $SRC/lib/ssp_ns && $make $1)
169(cd $SRC/lib/libc && $make $1)
170
171for lib in \
172 libm \
173 libmd \
174 libnsl \
175 libnvpair \
176 libsocket \
177 libavl \
178 libgss \
179 libgen \
180 libkrb5 \
181 libkstat \
182 libcmdutils \
183 libresolv2 \
184 libldap5 \
185 libsldap \
186 libreparse \
187 libpam \
188 libuutil \
189 libidmap \
190 libinetutil \
191 libdlpi \
192 libbsm \
193 libsec \
194 libsecdb \
195 libsqlite \
196 libumem \
197 libuuid \
198 libsaveargs \
199 libproc \
200 libscf \
201 libcryptoutil \
202 libmd5 \
203 libzfs_core \
204 libzfs \
205 pkcs11/libpkcs11
206do
207 # So we don't have to build EVERYTHING, set LDCHECKS=
208 # when building the dependent libraries.
209 (cd $SRC/lib/$lib && LDCHECKS='' $make $1)
210done
211}
212
213################################################################
214
215do_libs() {
216
217for lib in \
218 libfakekernel \
219 libads \
220 libsmbfs \
221 libmlrpc
222do
223 (cd $SRC/lib/$lib && $make $1)

--- 41 unchanged lines hidden (view full) ---

265 for lib in libfksmbsrv libmlsvc libcmdutils libavl
266 do
267 (cd $SRC/cmd/mdb/$x/$a/$lib && $make $1 )
268
269 done
270done
271}
272
273################################################################
274# This builds $SRC/TAGS (and cscope.files) in a helpful order.
275
276do_tags() {
277 (cd $SRC ;
278 find uts/common/sys -name '*.[ch]' -print |sort
279 find uts/common/net -name '*.[ch]' -print |sort
280 find uts/common/netinet -name '*.[ch]' -print |sort

--- 39 unchanged lines hidden (view full) ---

320usr/lib/smbsrv/libmlsvc.so.1
321usr/lib/smbsrv/libsmb.so.1
322usr/lib/smbsrv/libsmbns.so.1
323usr/lib/smbsrv/nvlprint
324usr/lib/smbsrv/smbd
325usr/sbin/smbadm
326usr/sbin/smbstat
327"
328 (cd $ROOT && tar cfj ../../smbsrv-${git_rev}.tar.bz2 $files)
329}
330
331################################################################
332
333if [ "$1" = "" ]; then
334 set '?' # force usage
335fi
336
337set -x
338
339for arg
340do
341 case "$arg" in
342 install)
343 build_tools
344 set -e
345 do_hdrs $arg
346 do_kern $arg
347 do_libs $arg
348 do_cmds $arg
349 ;;
350 lint)
351 do_hdrs $arg
352 do_kern $arg
353 do_libs $arg
354 do_cmds $arg
355 ;;
356 clean)
357 # intentionally skip: lib1, hdrs, tools
358 do_cmds $arg
359 do_libs $arg
360 do_kern $arg
361 ;;
362 clobber)
363 do_cmds $arg
364 do_libs $arg
365 do_kern $arg
366 do_hdrs $arg
367 do_deplibs $arg
368 clobber_tools
369 ;;
370 deplibs)
371 build_tools
372 set -e
373 do_hdrs install
374 do_deplibs install
375 ;;
376 tags)
377 do_tags
378 ;;
379 tar)
380 do_tar
381 ;;
382 *)
383 echo "Usage: $0 {install|lint|clean|clobber|deplibs|tags|tar}";
384 exit 1;
385 ;;
386 esac
387done