ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/JSOC/configsdp.txt
(Generate patch)

Comparing configsdp.txt (file contents):
Revision 1.17 by arta, Mon Dec 3 21:45:07 2012 UTC vs.
Revision 1.54 by arta, Thu Jan 21 20:30:48 2016 UTC

# Line 1 | Line 1
1   # This file contains JSOC_SDP-specific configuration information. It is used only if the '-sdp' flag is used
2 < # as an argument to the check-out script (checkoutDRMS.pl).
2 > # as an argument to the check-out script (checkoutDRMS.pl). To change the configuration at Stanford, edit
3 > # this file directly, and commit those changes to the source-tree repository.
4  
5 < # The lines in the __MAKE__ section define JSOC_SDP-specific make variables, targets, and rules. When
6 < # configproj.pl is run, it will process this section and create JSOC/localization/make_basic.mk. These are
5 > # The lines in the __PROJ_MK_RULES__ section define JSOC_SDP-specific make variables, targets, and rules. When
6 > # localize.py is run, it will process this section and create JSOC/localization/make_basic.mk. These are
7   # available to all JSOC_SDP projects.
8  
9 < # The lines in the __PROJ__ section define JSOC_SDP projects. When configproj.pl runs, file content will be
9 > # The lines in the __PROJ__ section define JSOC_SDP projects. When localize.py runs, file content will be
10   # added to JSOC/localization/Rules.mk and JSOC/localization/target.mk.
11  
12 < # The lines in the __LIBS__ section define default JSOC_SDP-specific third-party library configuration information.
13 < # These values apply to all code in both JSOC/base and JSOC/proj directories. Entries in config.local will override
14 < # these values. This section is read by moreconfigure.pl only - configproj.pl does not look at this section.
12 > # The lines in the __PROJCFG__ section define additional project-specific configuration. The code in this
13 > # section must be in a shell-scripting language, and will be executed as is.
14 >
15 > # The lines in the __MAKE__ section define global make variables to configure the make process. A subset of
16 > # these variables defines the locations of JSOC_SDP-specific third-party libraries. These values apply to all code
17 > # in both JSOC/base and JSOC/proj directories.
18 >
19 > __DEFS__
20 > q:SERVER                        hmidb
21 > q:DRMSPGPORT                    5432
22 > q:SUMS_DB_HOST                  hmidb3
23 > q:SUMPGPORT                     5434
24 > a:SUMSD_MAX_THREADS             32
25 > a:SUMSD_LISTENPORT              6004
26 > a:DRMS_LOCAL_SITE_CODE          0x0000
27 > q:DBNAME                        jsoc
28 > q:WEB_DBUSER                    apache
29 > q:POSTGRES_ADMIN                postgres
30 > q:SUMS_MANAGER                  production
31 > q:SUMS_GROUP                    SOI
32 > q:SUMLOG_BASEDIR                /usr/local/logs/SUM
33 > q:SUMBIN_BASEDIR                /usr/local/bin
34 > q:SUMSERVER                     k1.stanford.edu
35 > # The number of SUMS process SETS to spawn. If this number is not 1, then the number of SUMS processes
36 > # is SUM_NUMSUM * 5 + 2.
37 > a:SUM_NUMSUM                    3
38 > a:SUM_MAXNUMSUM                 8
39 > p:SUMS_TAPE_AVAILABLE           1
40 > p:SUMS_MULTIPLE_PARTNSETS       1
41 > # No idea what this parameter means. It isn't used anywhere in our code, but for some reason
42 > # it is part of the config.local set, so we have to include it here.
43 > a:SUMS_DEBUG                    1
44 > q:PRODUSER_DBHOST               hmidb:5432
45 > q:PRODUSER_DBNAME               jsoc
46 > q:PRODUSER_PRODTAB              su_production.produsers
47 > q:PRODUSER_COLUSER              username
48 > q:SUMRM_PART_PERCENT_FREE       3
49 > q:SUMRM_SLEEP                   300
50 > # This is a file in SUMLOG_BASEDIR.
51 > q:SUMRM_LOG                     sum_rm.cfg
52 > q:SUMRM_MAIL                    sys2@solar2
53 > q:SUMRM_NOOP                        0
54 > q:SUMRM_USER                        production
55 > q:SUMRM_NORUN_START                 0
56 > q:SUMRM_NORUN_STOP              0
57 > # JMD
58 > p:JMD_IS_INSTALLED              0
59 > q:JMD_URL                       http://localhost:8080/JMD/JMD
60 > # Remote SUMS
61 > q:RS_SITE_TABLE                         drms.rs_sites
62 > q:RS_REQUEST_TABLE                      drms.rs_requests
63 > q:RS_SU_TABLE                           drms.rs_sus
64 > q:RS_DBNAME                             jsoc
65 > q:RS_DBHOST                             hmidb
66 > a:RS_DBPORT                             5432
67 > q:RS_DBUSER                             production
68 > q:RS_LOCKFILE                           /home/jsoc/locks/remotesums.lck
69 > q:RS_LOGDIR                             /home/jsoc/jsoclogs/rsums
70 > a:RS_DLTIMEOUT                          30
71 > a:RS_REQTIMEOUT                          5
72 > a:RS_MAXTHREADS                         32
73 > q:RS_BINPATH                            /home/jsoc/cvs/Development/JSOC/bin/linux_x86_64
74 > # White-list (access to internal stuff)
75 > a:WL_HASWL                              1
76 > q:WL_FILE                               /web/jsoc/htdocs/whitelist.txt
77 > # Bin paths
78 > q:BIN_EXPORT                            /home/jsoc/cvs/Development/JSOC/bin
79 > q:SCRIPTS_EXPORT                        /home/jsoc/cvs/Development/JSOC/scripts
80 > q:BIN_PY                                /home/jsoc/bin/linux_x86_64/activepython27
81 > a:SUMS_USEMTSUMS                        1
82 > # Email registration
83 > a:REGEMAIL_TIMEOUT                      5
84 > # Slony
85 > q:SLONY_CONFIG                          /home/jsoc/cvs/Development/JSOC/proj/replication/etc/repserver.cfg
86 >
87 > # lev1.5_hmi
88 > q:POLCAL_PARAMS                         /home/jsoc/hmi/tables/lev15/polcal-param-fit.bin
89  
90   __MAKE__
91 < $(CEXESUMS):                    $(LIBSUMSAPI) $(LIBSUM) $(LIBDSTRUCT)
92 < $(MODEXESUMS):                  $(LIBSUMSAPI) $(LIBSUM)
91 > # JSOC_SDP third-party libraries used by base
92 > # The parameters in this section are used to create make variables. For example, the line
93 > # 'POSTGRES_LIB = pq' will cause a make variable named POSTGRES_LIB to be created and to
94 > # be assigned the value 'pq'.
95 >
96 > # If the name in the left column contains a colon, then the name on the LHS is the parameter name. The RHS is
97 > # a description of which platforms or specific machines the parameter applies to. For example,
98 > # the name POSTGRES_INCS:X86_64 implies that the value of the parameter named POSTGRES_INCS is /usr/include
99 > # when make is run on a linux_x86_64 machine. The RHS string can contain either a platform identifier
100 > # (X86_64, IA32, AVX, or IA64) or it can be a string that identifies a particular machine, like d02.
101 > # If the string is not one of the defined platform identifiers, then it is considered a machine identifier.
102 > # A machine identifier can specify more than one machine. The name POSTGRES_INCS:hmidb specifies
103 > # all machines whose names contain the string 'hmidb'. So, for machines hmidb, hmidb2, and hmidb3, the
104 > # value of the POSTGRES_INCS parameter is /usr/local/pgsql/include.
105 > #
106 > # If the RHS is a platform identifier, then make compares the value of $JSOC_MACHINE (which is in
107 > # reality a misnomer, since it truly specifies the name of the machine platform, not the name
108 > # of the machine) to the platform name specified by the RHS string. For example,
109 > # if the RHS string is 'avx', then make compares $JSOC_MACHINE to
110 > # 'linux_avx', and if there is a match, then the parameter's value specified in the second column is assigned
111 > # to the make variable. If the RHS is a machine identifier, then make compares the value of $MACHTYPE
112 > # (another misnormer, since it is the name of the machine, not the name of some type of machine ) to
113 > # the machine names specified by the RHS. For example, if the RHS string is 'hmidb' then make
114 > # compares $MACHTYPE to 'hmidb', and if 'hmidb' is a substring of $MACHTYPE, then the parameter's
115 > # value specified in the second column is assigned to the make variable
116 > #
117 > # Blocks defined by the _CUST_/_ENDCUST_ tags are copied ver batim into the output make file.
118 >
119 > POSTGRES_LIB            pq
120 > CFITSIO_LIB             cfitsio
121 >
122 > POSTGRES_INCS:X86_64    /usr/include
123 > POSTGRES_INCS:IA32      /usr/include
124 > POSTGRES_INCS:AVX       /usr/include
125 > POSTGRES_INCS:IA64      /usr/include/pgsql
126 > POSTGRES_INCS:j1       /usr/include/pgsql
127 > POSTGRES_INCS:d02      /usr/include/pgsql
128 > POSTGRES_INCS:hmidb    /usr/local/pgsql/include
129 > POSTGRES_INCS:cl1n0    __POSTGRES_DEVELOP_NOT_INSTALLED__
130 > POSTGRES_INCS:dcs      /usr/include/pgsql
131 >
132 > POSTGRES_LIBS:X86_64    /usr/lib64
133 > POSTGRES_LIBS:IA32      /usr/lib
134 > POSTGRES_LIBS:AVX       /usr/lib64
135 > POSTGRES_LIBS:IA64      /usr/lib
136 > POSTGRES_LIBS:j1       /usr/lib64
137 > POSTGRES_LIBS:d02      /usr/lib
138 > POSTGRES_LIBS:hmidb    /usr/lib64
139 > POSTGRES_LIBS:cl1n0    /usr/lib64
140 > POSTGRES_LIBS:dcs      /usr/lib64
141 >
142 > CFITSIO_INCS:X86_64     /home/jsoc/include
143 > CFITSIO_INCS:IA32       /home/jsoc/include
144 > CFITSIO_INCS:AVX        /home/jsoc/avx/include
145 > CFITSIO_INCS:IA64       /home/jsoc/include
146 > CFITSIO_INCS:j1         /home/jsoc/include
147 > CFITSIO_INCS:d02        __CFITSIO_NOT_INSTALLED__
148 > CFITSIO_INCS:hmidb      /home/jsoc/include
149 > CFITSIO_INCS:cl1n0      /home/jsoc/include
150 > CFITSIO_INCS:dcs        /home/jsoc/include
151 >
152 > CFITSIO_LIBS:X86_64     /home/jsoc/lib/linux-x86_64
153 > CFITSIO_LIBS:IA32       /home/jsoc/lib/linux-ia32
154 > CFITSIO_LIBS:AVX        /home/jsoc/avx/lib
155 > CFITSIO_LIBS:IA64       /home/jsoc/lib/linux-ia64
156 > CFITSIO_LIBS:j1         /home/jsoc/lib/linux-x86_64
157 > CFITSIO_LIBS:d02        __CFITSIO_NOT_INSTALLED__
158 > CFITSIO_LIBS:hmidb      /home/jsoc/lib/linux-x86_64
159 > CFITSIO_LIBS:cl1n0      /home/jsoc/lib/linux-x86_64
160 > CFITSIO_LIBS:dcs        /home/jsoc/lib/linux-x86_64
161 >
162 > FFTW_INCS:X86_64        /home/jsoc/include
163 > FFTW_INCS:IA32          /home/jsoc/include
164 > FFTW_INCS:AVX           /home/jsoc/avx/include
165 > FFTW_INCS:IA64          /home/jsoc/include
166 >
167 > FFTW_LIBS:X86_64        /home/jsoc/lib/linux-x86_64
168 > FFTW_LIBS:IA32          /home/jsoc/lib/linux-ia32
169 > FFTW_LIBS:AVX           /home/jsoc/avx/lib
170 > FFTW_LIBS:IA64          /home/jsoc/lib/linux-x86_64
171 >
172 > GSL_INCS:X86_64         /home/jsoc/include
173 > GSL_INCS:IA32           /home/jsoc/include
174 > GSL_INCS:AVX            /home/jsoc/avx/include
175 > GSL_INCS:IA64           /home/jsoc/include
176 >
177 > GSL_LIBS:X86_64         /home/jsoc/lib/linux-x86_64
178 > GSL_LIBS:IA32           /home/jsoc/lib/linux-ia32
179 > GSL_LIBS:AVX            /home/jsoc/avx/lib
180 > GSL_LIBS:IA64           /home/jsoc/lib/linux-x86_64
181 >
182 > MPI_INCS:X86_64         /home/jsoc/mpich2/include
183 > MPI_INCS:IA32          
184 > MPI_INCS:AVX            /home/jsoc/avx/include
185 > MPI_INCS:IA64          
186 >
187 > MPI_LIBS:X86_64         /home/jsoc/mpich2/lib
188 > MPI_LIBS:AVX            /home/jsoc/avx/lib
189 >
190 > MPI_PATH:X86_64         /home/jsoc/mpich2/bin
191 > MPI_PATH:AVX            /home/jsoc/avx/bin
192 >
193 > TAR_INCS:X86_64         /home/jsoc/include
194 > TAR_INCS:IA32           /home/jsoc/include
195 > TAR_INCS:AVX            /home/jsoc/avx/include
196 > TAR_INCS:IA64           /home/jsoc/include
197 >
198 > TAR_LIBS:X86_64         /home/jsoc/lib/linux-x86_64
199 > TAR_LIBS:IA32           /home/jsoc/lib/linux-ia32
200 > TAR_LIBS:AVX            /home/jsoc/lib/linux_avx
201 > TAR_LIBS:IA64           /home/jsoc/lib/linux-ia64
202 >
203 > PY_LIB                  python3.4m
204 > PY_INCS:X86_64          /home/jsoc/ActiveStatePy/linux_x86_64/ActivePython-3.4/include/python3.4m
205 > PY_INCS:AVX             /home/jsoc/ActiveStatePy/linux_avx/ActivePython-3.4/include/python3.4m
206 > PY_LIBS:X86_64          /home/jsoc/ActiveStatePy/linux_x86_64/ActivePython-3.4/lib
207 > PY_LIBS:AVX             /home/jsoc/ActiveStatePy/linux_avx/ActivePython-3.4/lib
208 > PY_HOME:X86_64          /home/jsoc/ActiveStatePy/linux_x86_64/ActivePython-3.4
209 > PY_HOME:AVX             /home/jsoc/ActiveStatePy/linux_avx/ActivePython-3.4
210 >
211 > # Set custom make file to tell the make system that the gcc cfitsio library is called
212 > # libcfitsio_gcc.a
213 > _CUST_
214 > ifeq ($(COMPILER), gcc)
215 >    ifeq ($(JSOC_MACHINE), linux_x86_64)
216 >    CFITSIO_LIB = cfitsio_gcc
217 >    endif
218 > endif
219 > _ENDCUST_
220 >
221 > __PROJ_MK_RULES__
222 > $(CEXESUMS):                    $(LIBSUMSAPI) $(LIBCJSON) $(LIBSUM) $(LIBDSTRUCT)
223 > $(MODEXESUMS):                  $(LIBSUMSAPI) $(LIBCJSON) $(LIBSUM)
224  
225   $(MODEXEDROBJ):                 CF_TGT := $(CF_TGT) -I$(SRCDIR)/proj/libs/dr
226   $(MODEXEDR) $(MODEXEDR_SOCK):   $(LIBDR)
21 CUSTOMSW := $(CUSTOMSW) -DTRACKSHADOWS
22 __END__
227   __PROJ__
228   <?xml version='1.0'?>
229   <projects>
# Line 62 | Line 266 | __PROJ__
266          </filters>
267     </proj>
268     <proj>
269 +        <name>mhd_32daily</name>
270 +        <subdirs>
271 +                <subdir>apps</subdir>
272 +        </subdirs>
273 +   </proj>
274 +   <proj>
275 +        <name>mhd_64cr</name>
276 +        <subdirs>
277 +                <subdir>apps</subdir>
278 +        </subdirs>
279 +   </proj>
280 +   <proj>
281          <name>util</name>
282          <subdirs>
283               <subdir>apps</subdir>    
# Line 107 | Line 323 | __PROJ__
323     <proj>
324          <name>globalhs</name>
325          <subdirs>
326 <            <subdir>apps/src</subdir>
326 >            <subdir>apps</subdir>
327 >            <subdir>libs/dtgf</subdir>
328 >            <subdir>libs/inv2d</subdir>
329 >            <subdir>libs/pkbgn</subdir>
330 >            <subdir>libs/projection</subdir>
331          </subdirs>
332          <filters>
333               <filter>
# Line 148 | Line 368 | __PROJ__
368          <subdirs>
369               <subdir>apps</subdir>
370          </subdirs>
371 +        <filters>
372 +             <filter>
373 +                  <name>COMPILER</name>
374 +                  <value>icc</value>
375 +             </filter>
376 +       </filters>
377     </proj>
378    <proj>
379          <name>farside</name>
# Line 183 | Line 409 | __PROJ__
409               <subdir>d4vm/apps</subdir>
410               <subdir>remapmags/apps</subdir>
411               <subdir>synop/apps</subdir>
412 +             <subdir>polarfield/apps</subdir>
413          </subdirs>
414          <filters>
415               <filter>
# Line 196 | Line 423 | __PROJ__
423          <subdirs>
424              <subdir>apps</subdir>
425          </subdirs>
426 +        <filters>
427 +             <filter>
428 +                  <name>COMPILER</name>
429 +                  <value>icc</value>
430 +             </filter>
431 +       </filters>
432     </proj>
433     <proj>
434          <name>vfisv</name>
# Line 209 | Line 442 | __PROJ__
442              <subdir>apps</subdir>
443          </subdirs>
444     </proj>
445 +   <proj>
446 +        <name>cgem</name>
447 +        <subdirs>
448 +             <subdir>apps</subdir>
449 +             <subdir>lorentz/apps</subdir>
450 +        </subdirs>
451 +        <filters>
452 +             <filter>
453 +                  <name>COMPILER</name>
454 +                  <value>icc</value>
455 +             </filter>
456 +       </filters>
457 +   </proj>
458   </projects>
213 __END__
459   __PROJCFG__
460   #! /bin/csh -f
461  
462 < # Project-specific configuration (like adding links to scripts to the $JSOCROOT/scripts
218 < # directory).
219 <
220 < find ../proj/lev0/scripts -mindepth 1 \( -path \*CVS -prune -o -exec ln -s {} . \; -a -exec echo "  " {} " OK" \; \) -o -exec echo "  " {} " ERROR - couldn't create link" \;
221 < __END__
222 < __LIBS__
223 < # JSOC_SDP third-party libraries used by base
224 <    POSTGRES_LIB = pq
225 <    CFITSIO_LIB = cfitsio
226 <
227 <    ifeq ($(JSOC_MACHINE), linux_avx)
228 <      POSTGRES_INCS = /usr/include
229 <      POSTGRES_LIBS = /usr/lib64
230 <      CFITSIO_INCS = /home/jsoc/avx/include
231 <      CFITSIO_LIBS = /home/jsoc/avx/lib
232 <    endif
233 <
234 <    ifeq ($(JSOC_MACHINE), linux_x86_64)
235 <      POSTGRES_INCS = /usr/include
236 <      POSTGRES_LIBS = /usr/lib64
237 <      CFITSIO_INCS = /home/jsoc/include
238 <      CFITSIO_LIBS = /home/jsoc/lib/linux-x86_64
239 <    endif
240 <
241 <    ifeq ($(JSOC_MACHINE), linux_ia32)
242 <      POSTGRES_INCS = /usr/include
243 <      POSTGRES_LIBS = /usr/lib
244 <      CFITSIO_INCS = /home/jsoc/include
245 <      CFITSIO_LIBS = /home/jsoc/lib/linux-ia32
246 <    endif
247 <
248 <    ifeq ($(JSOC_MACHINE), linux_ia64)
249 <      POSTGRES_INCS = /usr/include/pgsql
250 <      POSTGRES_LIBS = /usr/lib
251 <      CFITSIO_INCS = /home/jsoc/include
252 <      CFITSIO_LIBS = /home/jsoc/lib/linux-ia64
253 <    endif
254 <
255 < # JSOC_SDP third-party libraries used by the project directories
462 > set PERLBIN = ""
463  
464 <    ifeq ($(JSOC_MACHINE), linux_ia32)
465 <      FFTW_INCS = /home/jsoc/include
466 <      FFTW_LIBS = /home/jsoc/lib/linux-ia32
467 <      GSL_INCS = /home/jsoc/include
468 <      GSL_LIBS = /home/jsoc/lib/linux-ia32
262 <    endif
263 <    
264 <    ifeq ($(JSOC_MACHINE), linux_ia64)
265 <      FFTW_INCS = /home/jsoc/include
266 <      FFTW_LIBS = /home/jsoc/lib/linux-x86_64
267 <      GSL_INCS = /home/jsoc/include
268 <      GSL_LIBS = /home/jsoc/lib/linux-x86_64
269 <    endif
270 <
271 <    ifeq ($(JSOC_MACHINE), linux_x86_64)
272 <      FFTW_INCS = /home/jsoc/include
273 <      FFTW_LIBS = /home/jsoc/lib/linux-x86_64
274 <      GSL_INCS = /home/jsoc/include
275 <      GSL_LIBS = /home/jsoc/lib/linux-x86_64
276 <      MPI_INCS = /home/jsoc/mpich2/include
277 <      MPI_LIBS = /home/jsoc/mpich2/lib
278 <      MPI_PATH = /home/jsoc/mpich2/bin
279 <    endif
280 <
281 <    ifeq ($(JSOC_MACHINE), linux_avx)
282 <      FFTW_INCS = /home/jsoc/avx/include
283 <      FFTW_LIBS = /home/jsoc/avx/lib
284 <      GSL_INCS = /home/jsoc/avx/include
285 <      GSL_LIBS = /home/jsoc/avx/lib
286 <      MPI_INCS = /home/jsoc/avx/include
287 <      MPI_LIBS = /home/jsoc/avx/lib
288 <      MPI_PATH = /home/jsoc/avx/bin
289 <    endif
290 <
291 < # Try to specialize for non-default machines
292 <    ifeq ($(MACHTYPE), j1)
293 <      POSTGRES_INCS = /usr/include/pgsql
294 <      POSTGRES_LIBS = /usr/lib64
295 <      CFITSIO_INCS = /home/jsoc/include
296 <      CFITSIO_LIBS = /home/jsoc/lib/linux-x86_64
297 <    endif
298 <
299 <    ifeq ($(MACHTYPE), d02)
300 <      POSTGRES_INCS = /usr/include/pgsql
301 <      POSTGRES_LIBS = /usr/lib
302 <      CFITSIO_INCS = __CFITSIO_NOT_INSTALLED__
303 <      CFITSIO_LIBS = __CFITSIO_NOT_INSTALLED__
304 <   endif
305 <
306 <    ifeq ($(MACHTYPE), dbserver)
307 <      POSTGRES_INCS = /usr/local/pgsql/include
308 <      POSTGRES_LIBS = /usr/lib64
309 <      CFITSIO_INCS = /home/jsoc/include
310 <      CFITSIO_LIBS = /home/jsoc/lib/linux-x86_64
311 <    endif
312 <
313 <    ifeq ($(MACHTYPE), cluster)
314 <      POSTGRES_INCS = __POSTGRES_DEVELOP_NOT_INSTALLED__
315 <      POSTGRES_LIBS = /usr/lib64
316 <      CFITSIO_INCS = /home/jsoc/include
317 <      CFITSIO_LIBS = /home/jsoc/lib/linux-x86_64
464 > if ($PERLBIN == "") then
465 >    if (-x /home/jsoc/bin/linux_x86_64/activeperl) then
466 >        set PERLBIN = "/home/jsoc/bin/linux_x86_64/activeperl"
467 >    else
468 >        set PERLBIN = "perl"
469      endif
470 + endif
471  
472 <    ifeq ($(MACHTYPE), dcs)
473 <      POSTGRES_INCS = /usr/include/pgsql
474 <      POSTGRES_LIBS = /usr/lib64
323 <      CFITSIO_INCS = /home/jsoc/include
324 <      CFITSIO_LIBS = /home/jsoc/lib/linux-x86_64
325 <    endif
326 < # Set custom make file to tell the make system that the gcc cfitsio library is called
327 < # libcfitsio_gcc.a
328 <    ifeq ($(COMPILER), gcc)
329 <      ifeq ($(JSOC_MACHINE), linux_x86_64)
330 <        CFITSIO_LIB = cfitsio_gcc
331 <      endif
332 <    endif
333 < __END__
472 > # Project-specific configuration (like adding links to scripts to the $JSOCROOT/scripts
473 > # directory).
474 > find ../proj/lev0/scripts -mindepth 1 -path \*CVS -prune -o -print | ${PERLBIN} -MFile::Basename -n -e 'my($bn) = basename($_); chomp($bn); my($path) = $_; chomp($path); if (!(-e $bn)) { `ln -s $_`; if ($? >> 8 == 0) { print "   " . $path . " OK\n"; } else { print "   " . $path . " ERROR - could not create link\n"; } }'

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines