Merge ~epics-contrib/epics-base/+git/contrib:tidy-startup into ~epics-core/epics-base/+git/epics-base:3.14
- Git
- lp:~epics-contrib/epics-base/+git/contrib
- tidy-startup
- Merge into 3.14
Proposed by
Andrew Johnson
Status: | Merged |
---|---|
Merged at revision: | 4b594761701e23bb6fc82a7e8ee7deda54416d27 |
Proposed branch: | ~epics-contrib/epics-base/+git/contrib:tidy-startup |
Merge into: | ~epics-core/epics-base/+git/epics-base:3.14 |
Diff against target: |
1342 lines (+539/-368) (has conflicts) 14 files modified
ci/travis-build.sh (+1/-1) configure/CONFIG (+6/-2) dev/null (+0/-122) documentation/README.1st (+5/-8) documentation/README.darwin.html (+1/-1) documentation/README.html (+5/-8) documentation/RELEASE_NOTES.html (+41/-0) src/tools/EpicsHostArch.pl (+55/-0) src/tools/Makefile (+3/-0) startup/EpicsHostArch (+16/-79) startup/unix.csh (+96/-0) startup/unix.sh (+100/-0) startup/win32.bat (+105/-147) startup/windows.bat (+105/-0) Conflict in documentation/RELEASE_NOTES.html |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Martin Konrad (community) | Needs Fixing | ||
EPICS Core Developers | Pending | ||
Review via email: mp+352919@code.launchpad.net |
Commit message
Description of the change
A tidy-up of the Base startup directory, which should be suitable for all branches.
The EpicsHostArch.pl script has been rewritten, and moved to src/tools from where it gets installed into lib/perl (ci/travis-build.sh has been adjusted to find it there).
The original EpicsHostArch shell-script has been replaced with one that finds and runs the Perl version.
To post a comment you must log in.
Revision history for this message
Martin Konrad (info-martin-konrad) : | # |
review:
Needs Fixing
Revision history for this message
Andrew Johnson (anj) wrote : | # |
Preview Diff
[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1 | diff --git a/ci/travis-build.sh b/ci/travis-build.sh |
2 | index a3ca3fd..2ee5d65 100644 |
3 | --- a/ci/travis-build.sh |
4 | +++ b/ci/travis-build.sh |
5 | @@ -17,7 +17,7 @@ ticker() { |
6 | |
7 | CACHEKEY=1 |
8 | |
9 | -EPICS_HOST_ARCH=`sh startup/EpicsHostArch` |
10 | +EPICS_HOST_ARCH=`perl src/tools/EpicsHostArch.pl` |
11 | |
12 | [ -e configure/os/CONFIG_SITE.Common.linux-x86 ] || die "Wrong location: $PWD" |
13 | |
14 | diff --git a/configure/CONFIG b/configure/CONFIG |
15 | index 6fe6b9b..f5ba0b7 100644 |
16 | --- a/configure/CONFIG |
17 | +++ b/configure/CONFIG |
18 | @@ -20,11 +20,15 @@ else |
19 | endif |
20 | |
21 | # Provide a default if the user hasn't set EPICS_HOST_ARCH |
22 | +# |
23 | ifeq ($(origin EPICS_HOST_ARCH), undefined) |
24 | + # Bootstrapping ... |
25 | + EHA := $(firstword $(wildcard $(EPICS_BASE)/lib/perl/EpicsHostArch.pl \ |
26 | + $(TOP)/src/tools/EpicsHostArch.pl)) |
27 | # NB: We use a simply expanded variable here for performance: |
28 | - EPICS_HOST_ARCH := $(shell $(CONFIG)/../startup/EpicsHostArch.pl) |
29 | + export EPICS_HOST_ARCH := $(shell perl $(EHA)) |
30 | + undefine EHA |
31 | endif |
32 | -# |
33 | |
34 | -include $(CONFIG)/os/CONFIG_COMPAT |
35 | |
36 | diff --git a/documentation/README.1st b/documentation/README.1st |
37 | index 462ac46..7a6e770 100644 |
38 | --- a/documentation/README.1st |
39 | +++ b/documentation/README.1st |
40 | @@ -221,14 +221,11 @@ |
41 | |
42 | base/startup directory - contains scripts to set environment and path |
43 | |
44 | - EpicsHostArch C shell script to set EPICS_HOST_ARCH env variable |
45 | - EpicsHostArch.pl Perl script to set EPICS_HOST_ARCH env variable |
46 | - Site.profile bourne shell script to set path and env variables |
47 | - Site.cshrc c shell script to set path and env variables |
48 | - borland.bat WIN32 bat file to set borland path and env variables |
49 | - cygwin.bat WIN32 bat file to set cygwin path and env variables |
50 | - win32.bat WIN32 bat file to set path and env variables |
51 | - win32-debug.bat WIN32 debug bat file to set debug path and env variables |
52 | + EpicsHostArch Shell script to set EPICS_HOST_ARCH env variable |
53 | + unix.csh C shell script to set path and env variables |
54 | + unix.sh Bourne shell script to set path and env variables |
55 | + win32.bat Bat file example to configure win32-x86 target |
56 | + windows.bat Bat file example to configure windows-x64 target |
57 | |
58 | base/configure directory - contains build definitions and rules |
59 | |
60 | diff --git a/documentation/README.darwin.html b/documentation/README.darwin.html |
61 | index cbc2901..dd11ce8 100644 |
62 | --- a/documentation/README.darwin.html |
63 | +++ b/documentation/README.darwin.html |
64 | @@ -21,7 +21,7 @@ of my Bash login script (~/.bash_login): |
65 | # |
66 | EPICS_BASE="${HOME}/src/EPICS/base" |
67 | EPICS_EXTENSIONS="${HOME}/src/EPICS/extensions" |
68 | -<strong>.</strong> "${EPICS_BASE}"/startup/Site.profile |
69 | +<strong>.</strong> "${EPICS_BASE}"/startup/unix.sh |
70 | </pre> |
71 | </li> |
72 | <li> |
73 | diff --git a/documentation/README.html b/documentation/README.html |
74 | index a8a5723..98ec1b1 100644 |
75 | --- a/documentation/README.html |
76 | +++ b/documentation/README.html |
77 | @@ -230,14 +230,11 @@ |
78 | |
79 | <H4>base/startup directory - contains scripts to set environment and path</H4> |
80 | <PRE> |
81 | - EpicsHostArch C shell script to set EPICS_HOST_ARCH env variable |
82 | - EpicsHostArch.pl Perl script to set EPICS_HOST_ARCH env variable |
83 | - Site.profile bourne shell script to set path and env variables |
84 | - Site.cshrc c shell script to set path and env variables |
85 | - borland.bat WIN32 bat file to set borland path and env variables |
86 | - cygwin.bat WIN32 bat file to set cygwin path and env variables |
87 | - win32.bat WIN32 bat file to set path and env variables |
88 | - win32-debug.bat WIN32 debug bat file to set debug path and env variables |
89 | + EpicsHostArch Shell script to set EPICS_HOST_ARCH env variable |
90 | + unix.csh C shell script to set path and env variables |
91 | + unix.sh Bourne shell script to set path and env variables |
92 | + win32.bat Bat file example to configure win32-x86 target |
93 | + windows.bat Bat file example to configure windows-x64 target |
94 | </PRE> |
95 | |
96 | <H4>base/configure directory - contains build definitions and rules</H4> |
97 | diff --git a/documentation/RELEASE_NOTES.html b/documentation/RELEASE_NOTES.html |
98 | index bb7dd93..28c2e74 100644 |
99 | --- a/documentation/RELEASE_NOTES.html |
100 | +++ b/documentation/RELEASE_NOTES.html |
101 | @@ -16,6 +16,7 @@ Base-3.15 series or to EPICS 7.</p> |
102 | |
103 | <!-- Insert new items immediately below here ... --> |
104 | |
105 | +<<<<<<< documentation/RELEASE_NOTES.html |
106 | <h3>Recent Apple XCode Build Issues</h3> |
107 | |
108 | <p>The latest version of XCode will not compile calls to <tt>system()</tt> or |
109 | @@ -31,6 +32,46 @@ for a field like HSV to get set to a value that is not a legal alarm severity, |
110 | but the core IOC code should never copy such a value into a record's SEVR or |
111 | ACKS fields. With this fix the record's alarm severity will be limited to |
112 | INVALID_ALARM.</p> |
113 | +======= |
114 | +<h3>Cleanup of startup directory</h3> |
115 | + |
116 | +<p>The files in the startup directory have not been maintained in recent years |
117 | +and have grown crufty (technical term). This release includes the following |
118 | +updates to these files:</p> |
119 | + |
120 | +<ul> |
121 | + |
122 | +<li>The Perl <tt>EpicsHostArch.pl</tt> script has been rewritten, and support |
123 | +for a few previously missing host architectures has been added to it.</li> |
124 | + |
125 | +<li>The <tt>EpicsHostArch.pl</tt> script has also been moved into the standard |
126 | +<tt>src/tools</tt> directory, from where it will be installed into |
127 | +<tt>lib/perl</tt>. In this new location it is no longer executable, so it must |
128 | +be run by the <tt>perl</tt> executable.</li> |
129 | + |
130 | +<li>The build system has been adjusted to look for <tt>EpicsHostArch.pl</tt> in |
131 | +both places if the <tt>EPICS_HOST_ARCH</tt> environment variable has not been |
132 | +set at build-time.</li> |
133 | + |
134 | +<li>Sites that used the original Perl script to set <tt>EPICS_HOST_ARCH</tt> as |
135 | +part of their standard environment will need to adjust their scripts when they |
136 | +upgrade to this release.</li> |
137 | + |
138 | +<li>The <tt>EpicsHostArch</tt> shell script has been replaced with a wrapper |
139 | +routine that calls the Perl <tt>EpicsHostArch.pl</tt> script. Sites that rely on |
140 | +this script to set <tt>EPICS_HOST_ARCH</tt> should consider switching to the |
141 | +Perl script instead.</li> |
142 | + |
143 | +<li>The <tt>Site.cshrc</tt> and <tt>Site.profile</tt> files have been renamed to |
144 | +<tt>unix.csh</tt> and <tt>unix.sh</tt>, respectively.</li> |
145 | + |
146 | +<li>The existing <tt>win32.bat</tt> file has been cleaned up and a new |
147 | +<tt>windows.bat</tt> file added for 64-bit targets. The contents of these files |
148 | +should be seen as examples, don't uncomment or install parts for software that |
149 | +you don't explicitly know that you need.</li> |
150 | + |
151 | +</ul> |
152 | +>>>>>>> documentation/RELEASE_NOTES.html |
153 | |
154 | <h3>Fixes for Launchpad bugs</h3> |
155 | |
156 | diff --git a/src/tools/EpicsHostArch.pl b/src/tools/EpicsHostArch.pl |
157 | new file mode 100644 |
158 | index 0000000..e8e49bc |
159 | --- /dev/null |
160 | +++ b/src/tools/EpicsHostArch.pl |
161 | @@ -0,0 +1,55 @@ |
162 | +#!/usr/bin/env perl |
163 | +#************************************************************************* |
164 | +# Copyright (c) 2018 UChicago Argonne LLC, as Operator of Argonne |
165 | +# National Laboratory. |
166 | +# EPICS BASE is distributed subject to a Software License Agreement found |
167 | +# in file LICENSE that is included with this distribution. |
168 | +#************************************************************************* |
169 | + |
170 | +# Returns an architecture name for EPICS_HOST_ARCH that should be |
171 | +# appropriate for the CPU that this version of Perl was built for. |
172 | +# Any arguments to the program will be appended with separator '-' |
173 | +# to allow flags like -gnu -debug and/or -static to be added. |
174 | + |
175 | +# Before Base has been built, use a command like this: |
176 | +# bash$ export EPICS_HOST_ARCH=`perl src/tools/EpicsHostArch.pl` |
177 | +# |
178 | +# If Base is already built, use |
179 | +# tcsh% setenv EPICS_HOST_ARCH `perl base/lib/perl/EpicsHostArch.pl` |
180 | + |
181 | +# If your architecture is not recognized by this script, please send |
182 | +# the output from running 'perl --version' to the EPICS tech-talk |
183 | +# mailing list to have it added. |
184 | + |
185 | +use strict; |
186 | + |
187 | +use Config; |
188 | +use POSIX; |
189 | + |
190 | +print join('-', HostArch(), @ARGV), "\n"; |
191 | + |
192 | +sub HostArch { |
193 | + my $arch = $Config{archname}; |
194 | + for ($arch) { |
195 | + return 'linux-x86_64' if m/^x86_64-linux/; |
196 | + return 'linux-x86' if m/^i[3-6]86-linux/; |
197 | + return 'linux-arm' if m/^arm-linux/; |
198 | + return 'windows-x64' if m/^MSWin32-x64/; |
199 | + return 'win32-x86' if m/^MSWin32-x86/; |
200 | + return "cygwin-x86_64" if m/^x86_64-cygwin/; |
201 | + return "cygwin-x86" if m/^i[3-6]86-cygwin/; |
202 | + return 'solaris-sparc' if m/^sun4-solaris/; |
203 | + return 'solaris-x86' if m/^i86pc-solaris/; |
204 | + |
205 | + my ($kernel, $hostname, $release, $version, $cpu) = uname; |
206 | + if (m/^darwin/) { |
207 | + for ($cpu) { |
208 | + return 'darwin-x86' if m/^(i386|x86_64)/; |
209 | + return 'darwin-ppc' if m/Power Macintosh/; |
210 | + } |
211 | + die "$0: macOS CPU type '$cpu' not recognized\n"; |
212 | + } |
213 | + |
214 | + die "$0: Architecture '$arch' not recognized\n"; |
215 | + } |
216 | +} |
217 | diff --git a/src/tools/Makefile b/src/tools/Makefile |
218 | index bcf1270..c544703 100644 |
219 | --- a/src/tools/Makefile |
220 | +++ b/src/tools/Makefile |
221 | @@ -16,6 +16,9 @@ PERL_MODULES += EPICS/Path.pm |
222 | PERL_MODULES += EPICS/Release.pm |
223 | PERL_MODULES += EPICS/Getopts.pm |
224 | |
225 | +# This goes into lib/perl, not bin/<host> |
226 | +PERL_MODULES += EpicsHostArch.pl |
227 | + |
228 | PERL_SCRIPTS += convertRelease.pl |
229 | PERL_SCRIPTS += cvsclean.pl |
230 | PERL_SCRIPTS += dos2unix.pl |
231 | diff --git a/startup/EpicsHostArch b/startup/EpicsHostArch |
232 | old mode 100755 |
233 | new mode 100644 |
234 | index 8861ac5..de7f3d5 |
235 | --- a/startup/EpicsHostArch |
236 | +++ b/startup/EpicsHostArch |
237 | @@ -1,84 +1,21 @@ |
238 | #!/bin/sh |
239 | -#************************************************************************* |
240 | -# Copyright (c) 2011 UChicago Argonne LLC, as Operator of Argonne |
241 | -# National Laboratory. |
242 | -# Copyright (c) 2002 The Regents of the University of California, as |
243 | -# Operator of Los Alamos National Laboratory. |
244 | -# EPICS BASE is distributed subject to a Software License Agreement found |
245 | -# in file LICENSE that is included with this distribution. |
246 | -#************************************************************************* |
247 | -# |
248 | -# EpicsHostArch - returns the Epics host architecture suitable |
249 | -# for assigning to the EPICS_HOST_ARCH variable |
250 | +# Script to find and run the Perl EpicsHostArch.pl script. |
251 | |
252 | -if [ "x${1}" != "x" ] |
253 | -then |
254 | - suffix="-"${1} |
255 | -else |
256 | - suffix="" |
257 | -fi |
258 | +# This script is provided for backwards-compatibility only and may be |
259 | +# dropped from future releases of Base. Please adjust callers to run |
260 | +# the Perl version directly as this startup directory isn't copied to |
261 | +# INSTALL_LOCATION by the EPICS build system. |
262 | |
263 | -sysname=`uname` |
264 | +EHA=EpicsHostArch.pl |
265 | |
266 | -case $sysname in |
267 | - Linux ) |
268 | - os=linux |
269 | - cpu=`uname -m` |
270 | - case $cpu in |
271 | - i386 | i486 | i586 | i686 ) |
272 | - cpu=x86 ;; |
273 | - x86_64 ) |
274 | - ;; # $cpu is correct |
275 | - armv6l | armv7l ) |
276 | - cpu=arm ;; |
277 | - esac |
278 | - echo ${os}-${cpu}${suffix} |
279 | - ;; |
280 | - Darwin ) |
281 | - os=darwin |
282 | - cpu=`uname -m` |
283 | - case $cpu in |
284 | - "Power Macintosh") |
285 | - cpu=ppc ;; |
286 | - i386 | x86_64 ) |
287 | - cpu=x86 ;; |
288 | - esac |
289 | - echo ${os}-${cpu}${suffix} |
290 | - ;; |
291 | - SunOS ) |
292 | - version=`uname -r | sed '1s/^\([0-9]*\).*$/\1/'` |
293 | - if [ ${version} -ge 5 ]; then |
294 | - os=solaris |
295 | - else |
296 | - os=sun4 |
297 | - fi |
298 | - cpu=`uname -m` |
299 | - case $cpu in |
300 | - sun4*) |
301 | - cpu=sparc |
302 | - ;; |
303 | - i86pc) |
304 | - cpu=x86 |
305 | - ;; |
306 | - esac |
307 | - echo ${os}-${cpu}${suffix} |
308 | - ;; |
309 | - * ) |
310 | - sysname=`uname -o` |
311 | - case $sysname in |
312 | - Cygwin ) |
313 | - os=cygwin |
314 | - cpu=`uname -m` |
315 | - case $cpu in i386 | i486 | i586 | i686 ) |
316 | - cpu=x86 |
317 | - ;; |
318 | - esac |
319 | - echo ${os}-${cpu}${suffix} |
320 | - ;; |
321 | - * ) |
322 | - echo unsupported |
323 | - ;; |
324 | - esac |
325 | - ;; |
326 | -esac |
327 | +cd "$(dirname "$0")/.." |
328 | |
329 | +# Perl script will be installed into lib/perl |
330 | +[[ -f lib/perl/$EHA ]] && exec perl lib/perl/$EHA $* |
331 | + |
332 | +# If Base hasn't been built yet, use the source Luke |
333 | +[[ -f src/tools/$EHA ]] && exec perl src/tools/$EHA $* |
334 | + |
335 | +# Die with an error message |
336 | +echo "$0: Can't find $EHA" >&2 |
337 | +exit 1 |
338 | diff --git a/startup/EpicsHostArch.pl b/startup/EpicsHostArch.pl |
339 | deleted file mode 100755 |
340 | index 09f7ffd..0000000 |
341 | --- a/startup/EpicsHostArch.pl |
342 | +++ /dev/null |
343 | @@ -1,47 +0,0 @@ |
344 | -eval 'exec perl -S $0 ${1+"$@"}' # -*- Mode: perl -*- |
345 | - if $running_under_some_shell; # EpicsHostArch.pl |
346 | -#************************************************************************* |
347 | -# Copyright (c) 2011 UChicago Argonne LLC, as Operator of Argonne |
348 | -# National Laboratory. |
349 | -# Copyright (c) 2002 The Regents of the University of California, as |
350 | -# Operator of Los Alamos National Laboratory. |
351 | -# EPICS BASE is distributed subject to a Software License Agreement found |
352 | -# in file LICENSE that is included with this distribution. |
353 | -#************************************************************************* |
354 | - |
355 | -# Returns the Epics host architecture suitable |
356 | -# for assigning to the EPICS_HOST_ARCH variable |
357 | - |
358 | -use Config; |
359 | -use POSIX; |
360 | - |
361 | -$suffix=""; |
362 | -$suffix="-".$ARGV[0] if ($ARGV[0] ne ""); |
363 | - |
364 | -$EpicsHostArch = GetEpicsHostArch(); |
365 | -print "$EpicsHostArch$suffix"; |
366 | - |
367 | -sub GetEpicsHostArch { # no args |
368 | - $arch=$Config{'archname'}; |
369 | - if ($arch =~ /sun4-solaris/) { return "solaris-sparc"; |
370 | - } elsif ($arch =~ m/i86pc-solaris/) { return "solaris-x86"; |
371 | - } elsif ($arch =~ m/i[3-6]86-linux/){ return "linux-x86"; |
372 | - } elsif ($arch =~ m/x86_64-linux/) { return "linux-x86_64"; |
373 | - } elsif ($arch =~ m/arm-linux/) { return "linux-arm"; |
374 | - } elsif ($arch =~ m/MSWin32-x86/) { return "win32-x86"; |
375 | - } elsif ($arch =~ m/MSWin32-x64/) { return "windows-x64"; |
376 | - } elsif ($arch =~ m/cygwin/) { |
377 | - my($kernel, $hostname, $release, $version, $cpu) = POSIX::uname(); |
378 | - if ($cpu =~ m/x86_64/) { return "cygwin-x86_64"; } |
379 | - return "cygwin-x86"; |
380 | - } elsif ($arch =~ m/darwin/) { |
381 | - my($kernel, $hostname, $release, $version, $cpu) = POSIX::uname(); |
382 | - if ($cpu =~ m/Power Macintosh/) { return "darwin-ppc"; } |
383 | - elsif ($cpu =~ m/i386/) { return "darwin-x86"; } |
384 | - elsif ($cpu =~ m/x86_64/) { return "darwin-x86"; } |
385 | - else { return "unsupported"; } |
386 | - } else { return "unsupported"; } |
387 | -} |
388 | - |
389 | -#EOF EpicsHostArch.pl |
390 | - |
391 | diff --git a/startup/Site.cshrc b/startup/Site.cshrc |
392 | deleted file mode 100755 |
393 | index 23453cb..0000000 |
394 | --- a/startup/Site.cshrc |
395 | +++ /dev/null |
396 | @@ -1,118 +0,0 @@ |
397 | -#!/bin/csh -f |
398 | -#************************************************************************* |
399 | -# Copyright (c) 2002 The University of Chicago, as Operator of Argonne |
400 | -# National Laboratory. |
401 | -# Copyright (c) 2002 The Regents of the University of California, as |
402 | -# Operator of Los Alamos National Laboratory. |
403 | -# EPICS BASE Versions 3.13.7 |
404 | -# and higher are distributed subject to a Software License Agreement found |
405 | -# in file LICENSE that is included with this distribution. |
406 | -#************************************************************************* |
407 | -# Site-specific EPICS environment settings |
408 | -# |
409 | -# sites should modify these definitions |
410 | - |
411 | -# Location of epics base |
412 | -if ( ! $?EPICS_BASE ) then |
413 | - set EPICS_BASE=/usr/local/epics/base |
414 | -endif |
415 | - |
416 | -# Location of epics extensions |
417 | -if ( ! $?EPICS_EXTENSIONS ) then |
418 | - setenv EPICS_EXTENSIONS /usr/local/epics/extensions |
419 | -endif |
420 | - |
421 | -# Postscript printer definition needed by some extensions (eg medm, dp, dm, ...) |
422 | -if ( ! $?PSPRINTTER ) then |
423 | - setenv PSPRINTER lp |
424 | -endif |
425 | - |
426 | -# Needed only by medm extension |
427 | -#setenv EPICS_DISPLAY_PATH |
428 | -# Needed only by medm extension |
429 | -setenv BROWSER firefox |
430 | - |
431 | -# Needed only by orbitscreen extension |
432 | -if ( ! $?ORBITSCREENHOME ) then |
433 | - setenv ORBITSCREENHOME $EPICS_EXTENSIONS/src/orbitscreen |
434 | -endif |
435 | - |
436 | -# Needed only by adt extension |
437 | -if ( ! $?ADTHOME ) then |
438 | - setenv ADTHOME /usr/local/oag/apps/src/appconfig/adt |
439 | - echo $ADTHOME |
440 | -endif |
441 | - |
442 | -# Needed only by ar extension (archiver) |
443 | -setenv EPICS_AR_PORT 7002 |
444 | - |
445 | -# Needed for java extensions |
446 | -if ( $?CLASSPATH ) then |
447 | - setenv CLASSPATH "${CLASSPATH}:${EPICS_EXTENSIONS}/javalib" |
448 | -else |
449 | - setenv CLASSPATH "${EPICS_EXTENSIONS}/javalib" |
450 | -endif |
451 | - |
452 | -# Allow private versions of extensions without a bin subdir |
453 | -if ( $?EPICS_EXTENSIONS_PVT ) then |
454 | - set path = ( $path $EPICS_EXTENSIONS_PVT) |
455 | -endif |
456 | - |
457 | -################################################################## |
458 | - |
459 | -# Start of set R3.14 environment variables |
460 | - |
461 | -setenv EPICS_HOST_ARCH `$EPICS_BASE/startup/EpicsHostArch.pl` |
462 | - |
463 | -# Allow private versions of base |
464 | -if ( $?EPICS_BASE_PVT ) then |
465 | - if ( -e $EPICS_BASE_PVT/bin/$EPICS_HOST_ARCH ) then |
466 | - set path = ( $path $EPICS_BASE_PVT/bin/$EPICS_HOST_ARCH) |
467 | - endif |
468 | -endif |
469 | - |
470 | -# Allow private versions of extensions |
471 | -if ( $?EPICS_EXTENSIONS_PVT ) then |
472 | - if ( -e $EPICS_EXTENSIONS_PVT/bin/$EPICS_HOST_ARCH ) then |
473 | - set path = ( $path $EPICS_EXTENSIONS_PVT/bin/$EPICS_HOST_ARCH) |
474 | - endif |
475 | -endif |
476 | -set path = ( $path $EPICS_EXTENSIONS/bin/$EPICS_HOST_ARCH ) |
477 | - |
478 | -# End of set R3.14 environment variables |
479 | -################################################################## |
480 | - |
481 | - |
482 | -## Start of set pre R3.14 environment variables |
483 | -# |
484 | -## Time service: |
485 | -## EPICS_TS_MIN_WEST the local time difference from GMT. |
486 | -#setenv EPICS_TS_MIN_WEST 360 |
487 | -# |
488 | -#if ( -e /usr/local/etc/setup/HostArch.pl ) then |
489 | -# setenv HOST_ARCH `/usr/local/etc/setup/HostArch.pl` |
490 | -#else |
491 | -# setenv HOST_ARCH `/usr/local/epics/startup/HostArch.pl` |
492 | -#endif |
493 | -# |
494 | -## Allow private versions of extensions |
495 | -#if ( $?EPICS_EXTENSIONS_PVT ) then |
496 | -# if ( -e $EPICS_EXTENSIONS_PVT/bin/$HOST_ARCH ) then |
497 | -# set path = ( $path $EPICS_EXTENSIONS_PVT/bin/$HOST_ARCH) |
498 | -# endif |
499 | -# # Needed if shared extension libraries are built |
500 | -# if ( -e $EPICS_EXTENSIONS_PVT/lib/$HOST_ARCH ) then |
501 | -# if ( $?LD_LIBRARY_PATH ) then |
502 | -# setenv LD_LIBRARY_PATH "${LD_LIBRARY_PATH}:${EPICS_EXTENSIONS_PVT}/lib/${HOST_ARCH}" |
503 | -# else |
504 | -# setenv LD_LIBRARY_PATH "${EPICS_EXTENSIONS_PVT}/lib/${HOST_ARCH}" |
505 | -# endif |
506 | -# endif |
507 | -#endif |
508 | -# |
509 | -#set path = ( $path $EPICS_EXTENSIONS/bin/$HOST_ARCH ) |
510 | -## Needed if shared extension libraries are built |
511 | -#setenv LD_LIBRARY_PATH "${LD_LIBRARY_PATH}:${EPICS_EXTENSIONS}/lib/${HOST_ARCH}" |
512 | - |
513 | -# End of set pre R3.14 environment variables |
514 | -################################################################## |
515 | diff --git a/startup/Site.profile b/startup/Site.profile |
516 | deleted file mode 100755 |
517 | index 5cb9b02..0000000 |
518 | --- a/startup/Site.profile |
519 | +++ /dev/null |
520 | @@ -1,118 +0,0 @@ |
521 | -#!/bin/sh |
522 | -#************************************************************************* |
523 | -# Copyright (c) 2002 The University of Chicago, as Operator of Argonne |
524 | -# National Laboratory. |
525 | -# Copyright (c) 2002 The Regents of the University of California, as |
526 | -# Operator of Los Alamos National Laboratory. |
527 | -# EPICS BASE Versions 3.13.7 |
528 | -# and higher are distributed subject to a Software License Agreement found |
529 | -# in file LICENSE that is included with this distribution. |
530 | -#************************************************************************* |
531 | -# Site-specific EPICS environment settings |
532 | -# |
533 | -# sites should modify these definitions |
534 | - |
535 | -# Location of epics base |
536 | -if [ -z "${MY_EPICS_BASE}" ] ; then |
537 | - MY_EPICS_BASE=/usr/local/epics/base |
538 | -fi |
539 | - |
540 | -# Location of epics extensions (medm, msi, etc.) |
541 | -if [ -z "${EPICS_EXTENSIONS}" ] ; then |
542 | - EPICS_EXTENSIONS=/usr/local/epics/extensions |
543 | -fi |
544 | - |
545 | -# Postscript printer definition needed by some extensions (eg medm, dp, dm, ...) |
546 | -if [ -z "${PSPRINTER}" ] ; then |
547 | - export PSPRINTER=lp |
548 | -fi |
549 | - |
550 | -#Needed only by the idl and ezcaIDL extensions. |
551 | -#export EPICS_EXTENSIONS |
552 | - |
553 | -# Needed only by medm extension |
554 | -#export EPICS_DISPLAY_PATH=/path/to/adl/files |
555 | -export BROWSER=firefox |
556 | - |
557 | -# Needed only by orbitscreen extension |
558 | -#if [ -z "${ORBITSCREENHOME}" ] ; then |
559 | -# export "ORBITSCREENHOME=${EPICS_EXTENSIONS/src/orbitscreen}" |
560 | -#fi |
561 | - |
562 | -# Needed only by adt extension |
563 | -#if [ -z "${ADTHOME}" ] ; then |
564 | -# ADTHOME= |
565 | -# export ADTHOME |
566 | -#fi |
567 | - |
568 | -# Needed only by ar extension (archiver) |
569 | -#EPICS_AR_PORT=7002 |
570 | -#export EPICS_AR_PORT |
571 | - |
572 | -# Needed for java extensions |
573 | -if [ -z "${CLASSPATH}" ] ; then |
574 | - CLASSPATH="${EPICS_EXTENSIONS}/javalib" |
575 | -else |
576 | - CLASSPATH="${CLASSPATH}:${EPICS_EXTENSIONS}/javalib" |
577 | -fi |
578 | -export CLASSPATH |
579 | - |
580 | -# Allow private versions of extensions without a bin subdir |
581 | -if [ -n "${EPICS_EXTENSIONS_PVT}" ] ; then |
582 | - PATH="${PATH}:${EPICS_EXTENSIONS_PVT}" |
583 | -fi |
584 | - |
585 | -#--------------------------------------------------------------- |
586 | -# Start of set R3.14 environment variables |
587 | -# |
588 | -EPICS_HOST_ARCH=`"${MY_EPICS_BASE}"/startup/EpicsHostArch.pl` |
589 | -export EPICS_HOST_ARCH |
590 | - |
591 | -# Allow private versions of base |
592 | -if [ -n "${EPICS_BASE_PVT}" ] ; then |
593 | - if [ -d "${EPICS_BASE_PVT}/bin/${EPICS_HOST_ARCH}" ]; then |
594 | - PATH="${PATH}:${EPICS_BASE_PVT}/bin/${EPICS_HOST_ARCH}" |
595 | - fi |
596 | -fi |
597 | - |
598 | -# Allow private versions of extensions |
599 | -if [ -n "${EPICS_EXTENSIONS_PVT}" ] ; then |
600 | - if [ -d "${EPICS_EXTENSIONS_PVT}/bin/${EPICS_HOST_ARCH}" ]; then |
601 | - PATH="${PATH}:${EPICS_EXTENSIONS_PVT}/bin/${EPICS_HOST_ARCH}" |
602 | - fi |
603 | -fi |
604 | -PATH="${PATH}:${EPICS_EXTENSIONS}/bin/${EPICS_HOST_ARCH}" |
605 | - |
606 | -# End of set R3.14 environment variables |
607 | - |
608 | -#--------------------------------------------------------------- |
609 | -# |
610 | -## Start of set pre R3.14 environment variables |
611 | -# |
612 | -## Time service: |
613 | -## EPICS_TS_MIN_WEST the local time difference from GMT. |
614 | -#EPICS_TS_MIN_WEST=360 |
615 | -#export EPICS_TS_MIN_WEST |
616 | -# |
617 | -#HOST_ARCH=`"${MY_EPICS_BASE}"/startup/HostArch` |
618 | -#export HOST_ARCH |
619 | -# |
620 | -## Allow private versions of base |
621 | -#if [ -n "${EPICS_BASE_PVT}" ] ; then |
622 | -# if [ -d "${EPICS_BASE_PVT}/bin/${HOST_ARCH}" ]; then |
623 | -# PATH="${PATH}:${EPICS_BASE_PVT}/bin/${HOST_ARCH}" |
624 | -# fi |
625 | -#fi |
626 | -# |
627 | -## Allow private versions of extensions |
628 | -#if [ -n "${EPICS_EXTENSIONS_PVT}" ] ; then |
629 | -# if [ -d "${EPICS_EXTENSIONS_PVT}/bin/${HOST_ARCH}" ]; then |
630 | -# PATH="${PATH}:${EPICS_EXTENSIONS_PVT}/bin/${HOST_ARCH}" |
631 | -# fi |
632 | -#fi |
633 | -# |
634 | -#PATH="${PATH}:${EPICS_EXTENSIONS}/lib/${HOST_ARCH}" |
635 | -# |
636 | -# End of set pre R3.14 environment variables |
637 | - |
638 | -#--------------------------------------------------------------- |
639 | diff --git a/startup/cygwin.bat b/startup/cygwin.bat |
640 | deleted file mode 100755 |
641 | index ff75b53..0000000 |
642 | --- a/startup/cygwin.bat |
643 | +++ /dev/null |
644 | @@ -1,122 +0,0 @@ |
645 | -@ECHO OFF |
646 | -REM ************************************************************************* |
647 | -REM Copyright (c) 2002 The University of Chicago, as Operator of Argonne |
648 | -REM National Laboratory. |
649 | -REM Copyright (c) 2002 The Regents of the University of California, as |
650 | -REM Operator of Los Alamos National Laboratory. |
651 | -REM EPICS BASE Versions 3.13.7 |
652 | -REM and higher are distributed subject to a Software License Agreement found |
653 | -REM in file LICENSE that is included with this distribution. |
654 | -REM ************************************************************************* |
655 | -REM |
656 | -REM Site-specific EPICS environment settings |
657 | -REM |
658 | -REM sites should modify these definitions |
659 | - |
660 | -REM ====================================================== |
661 | -REM ====== REQUIRED ENVIRONMENT VARIABLES FOLLOW ====== |
662 | -REM ====================================================== |
663 | - |
664 | -REM ====================================================== |
665 | -REM ---------------- WINDOWS --------------------------- |
666 | -REM ====================================================== |
667 | -REM ----- WIN95 ----- |
668 | -REM set PATH=C:\WINDOWS;C:\WINDOWS\COMMAND |
669 | -REM ----- WINNT, WIN2000 ----- |
670 | -REM set PATH=C:\WINNT;C:\WINNT\SYSTEM32 |
671 | -REM ----- WINXP, Vista, Windows 7 ----- |
672 | -set PATH=C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\SYSTEM32\Wbem |
673 | - |
674 | -REM ====================================================== |
675 | -REM ---------------- make and perl --------------------- |
676 | -REM ====================================================== |
677 | - |
678 | -REM --------------- ActiveState perl ------------------- |
679 | -set PATH=C:\Perl\bin;%PATH% |
680 | - |
681 | -REM --------------- mingw make ------------------------ |
682 | -REM set PATH=C:\mingw-make\bin;%PATH% |
683 | -REM set PATH=C:\mingw-make82-3\bin;%PATH% |
684 | - |
685 | -REM --------------- gnuwin32 make ---------------------- |
686 | -set PATH=C:\gnuwin32\bin;%PATH% |
687 | - |
688 | -REM ====================================================== |
689 | -REM ---------------- cygwin tools ------------------------ |
690 | -REM ====================================================== |
691 | -REM (make & perl if above perl and make are REMs) |
692 | -REM Dont use cygwin GNU make and Perl! |
693 | -REM cygwin contains tk/tcl, vim, perl, and many unix tools |
694 | -REM need grep from here NOT from cvs directory |
695 | -set PATH=%PATH%;.;.. |
696 | -set PATH=%PATH%;c:\cygwin\bin |
697 | - |
698 | -REM ====================================================== |
699 | -REM --------------- EPICS -------------------------------- |
700 | -REM ====================================================== |
701 | -set EPICS_HOST_ARCH=cygwin-x86 |
702 | -set PATH=%PATH%;G:\epics\base\bin\%EPICS_HOST_ARCH% |
703 | -set PATH=%PATH%;G:\epics\extensions\bin\%EPICS_HOST_ARCH% |
704 | - |
705 | -REM ====================================================== |
706 | -REM ------- OPTIONAL ENVIRONMENT VARIABLES FOLLOW -------- |
707 | -REM ====================================================== |
708 | - |
709 | -REM ====================================================== |
710 | -REM ----------------- remote CVS ------------------------- |
711 | -REM ====================================================== |
712 | -REM set CVS_RSH=c:/cygwin/bin/ssh.exe |
713 | -REM set CVSROOT=:ext:jba@aps.anl.gov:/usr/local/epicsmgr/cvsroot |
714 | -REM set HOME=c:/users/%USERNAME% |
715 | -REM set HOME=c:/users/jba |
716 | - |
717 | -REM ====================================================== |
718 | -REM ------------------- Bazaar --------------------------- |
719 | -REM ====================================================== |
720 | -set PATH=%PATH%;C:\Program files\Bazaar |
721 | - |
722 | -REM ====================================================== |
723 | -REM ----------------- GNU make flags --------------------- |
724 | -REM ====================================================== |
725 | -set MAKEFLAGS=-w |
726 | - |
727 | -REM ====================================================== |
728 | -REM -------------- vim (use cygwin vim ) ----------------- |
729 | -REM ====================================================== |
730 | -REM HOME needed by vim to write .viminfo file. |
731 | -REM VIM needed by vim to find _vimrc file. |
732 | -REM set VIM=c:\cygwin |
733 | - |
734 | -REM ====================================================== |
735 | -REM --------------- Epics Channel Access ----------------- |
736 | -REM Modify and uncomment the following lines |
737 | -REM to override the base/configure/CONFIG_ENV defaults |
738 | -REM ====================================================== |
739 | -REM set EPICS_CA_ADDR_LIST=n.n.n.n n.n.n.n |
740 | -REM set EPICS_CA_AUTO_ADDR_LIST=YES |
741 | - |
742 | -REM set EPICS_CA_CONN_TMO=30.0 |
743 | -REM set EPICS_CA_BEACON_PERIOD=15.0 |
744 | -REM set EPICS_CA_REPEATER_PORT=5065 |
745 | -REM set EPICS_CA_SERVER_PORT=5064 |
746 | -REM set EPICS_TS_MIN_WEST=420 |
747 | - |
748 | -REM ====================================================== |
749 | -REM --------------- JAVA --------------------------------- |
750 | -REM ====================================================== |
751 | -REM Needed for java extensions |
752 | -REM set CLASSPATH=G:\epics\extensions\javalib |
753 | -REM set PATH=%PATH%;C:\j2sdk1.4.1_01\bin |
754 | -REM set CLASSPATH=%CLASSPATH%;C:\j2sdk1.4.1_01\lib\tools.jar |
755 | - |
756 | -REM ====================================================== |
757 | -REM --------------- Exceed ------------------------------- |
758 | -REM Needed for X11 extensions |
759 | -REM ====================================================== |
760 | -REM set EX_VER=7.10 |
761 | -REM set EX_VER=12.00 |
762 | -REM set EX_VER=14.00 |
763 | -REM set PATH=%PATH%;C:\Exceed%EX_VER%\XDK\ |
764 | -REM set PATH=%PATH%;C:\Program Files\Hummingbird\Connectivity\%EX_VER%\Exceed\ |
765 | - |
766 | - |
767 | diff --git a/startup/unix.csh b/startup/unix.csh |
768 | new file mode 100644 |
769 | index 0000000..788a639 |
770 | --- /dev/null |
771 | +++ b/startup/unix.csh |
772 | @@ -0,0 +1,96 @@ |
773 | +#************************************************************************* |
774 | +# Copyright (c) 2002 The University of Chicago, as Operator of Argonne |
775 | +# National Laboratory. |
776 | +# Copyright (c) 2002 The Regents of the University of California, as |
777 | +# Operator of Los Alamos National Laboratory. |
778 | +# EPICS BASE Versions 3.13.7 |
779 | +# and higher are distributed subject to a Software License Agreement found |
780 | +# in file LICENSE that is included with this distribution. |
781 | +#************************************************************************* |
782 | +# |
783 | +# Site-specific EPICS environment settings |
784 | +# |
785 | +# Attempts to set EPICS_HOST_ARCH. Optionally, adds the EPICS Base |
786 | +# install host architecture bin directory to PATH. |
787 | +# |
788 | + |
789 | +#----------------------------------------------------------------------- |
790 | +# Site serviceable parts (These definitions may be modified) |
791 | +#----------------------------------------------------------------------- |
792 | + |
793 | +# Automatically set up the environment when possible ("yes" or "no"). |
794 | +# If set to yes, as much of the environment will be set up as possible. |
795 | +# If set to no, just the minimum environment will be set up. More |
796 | +# specific _auto_* definitions take precedence over this definition. |
797 | +set _auto=no |
798 | + |
799 | +# Automatically append to PATH ("yes" or "no"). If set to yes, the |
800 | +# EPICS Base install host architecture bin directory will be added to |
801 | +# PATH if possible. If set to no, the bin directory will not be added |
802 | +# to PATH. |
803 | +set _auto_path_append=$_auto |
804 | + |
805 | +# The program used to run Perl scripts (pathname). |
806 | +set _perl_prog=perl |
807 | + |
808 | +# The EPICS host architecture specification for EPICS_HOST_ARCH |
809 | +# (<os>-<arch>[-<toolset>] as defined in configure/CONFIG_SITE). If |
810 | +# nonempty, the value will be used as the value of EPICS_HOST_ARCH. If |
811 | +# empty, an attempt will be made to automatically determine the value |
812 | +# with EpicsHostArch.pl. |
813 | +set _epics_host_arch= |
814 | + |
815 | +# The install location of EPICS Base (pathname). If nonempty, the |
816 | +# EpicsHostArch.pl script from it, if it exists, will be used to |
817 | +# determine EPICS_HOST_ARCH. If nonempty and EPICS_HOST_ARCH was |
818 | +# determined successfully, it will be used to add the host architecture |
819 | +# bin directory to PATH if _auto_path_append is yes. |
820 | +set _epics_base= |
821 | + |
822 | +# The source location of EPICS Base (pathname). If nonempty, the |
823 | +# EpicsHostArch.pl script from it, if it exists and _epics_base is empty |
824 | +# or it did not exist in the _epics_base location, will be used to |
825 | +# determine EPICS_HOST_ARCH. |
826 | +set _epics_base_src= |
827 | + |
828 | +#----------------------------------------------------------------------- |
829 | +# Internal parts (There is typically no need to modify these) |
830 | +#----------------------------------------------------------------------- |
831 | + |
832 | +# Define the possible locations of EpicsHostArch.pl |
833 | +set _epics_host_arch_pl= |
834 | +set _src_epics_host_arch_pl= |
835 | +if ("$_epics_base" != '') then |
836 | + set _epics_host_arch_pl="$_epics_base/lib/perl/EpicsHostArch.pl" |
837 | +endif |
838 | +if ("$_epics_base_src" != '') then |
839 | + set _src_epics_host_arch_pl="$_epics_base_src/src/tools/EpicsHostArch.pl" |
840 | +endif |
841 | + |
842 | +# Set the EPICS host architecture specification |
843 | +if ("$_epics_host_arch" != '') then |
844 | + setenv EPICS_HOST_ARCH "$_epics_host_arch" |
845 | +else if (-e "$_epics_host_arch_pl") then |
846 | + set _epics_host_arch=`"$_perl_prog" "$_epics_host_arch_pl"` |
847 | + setenv EPICS_HOST_ARCH "$_epics_host_arch" |
848 | +else if (-e "$_src_epics_host_arch_pl") then |
849 | + set _epics_host_arch=`"$_perl_prog" "$_src_epics_host_arch_pl"` |
850 | + setenv EPICS_HOST_ARCH "$_epics_host_arch" |
851 | +endif |
852 | + |
853 | +# Add the EPICS Base host architecture bin directory to PATH |
854 | +if ("$_auto_path_append" == yes) then |
855 | + if ("$_epics_base" != '' && "$_epics_host_arch" != '') then |
856 | + setenv PATH "${PATH}:$_epics_base/bin/$_epics_host_arch" |
857 | + endif |
858 | +endif |
859 | + |
860 | +# Don't leak variables into the environment |
861 | +unset _auto |
862 | +unset _auto_path_append |
863 | +unset _perl_prog |
864 | +unset _epics_host_arch |
865 | +unset _epics_base |
866 | +unset _epics_base_src |
867 | +unset _epics_host_arch_pl |
868 | +unset _src_epics_host_arch_pl |
869 | diff --git a/startup/unix.sh b/startup/unix.sh |
870 | new file mode 100644 |
871 | index 0000000..a8d8328 |
872 | --- /dev/null |
873 | +++ b/startup/unix.sh |
874 | @@ -0,0 +1,100 @@ |
875 | +#************************************************************************* |
876 | +# Copyright (c) 2002 The University of Chicago, as Operator of Argonne |
877 | +# National Laboratory. |
878 | +# Copyright (c) 2002 The Regents of the University of California, as |
879 | +# Operator of Los Alamos National Laboratory. |
880 | +# EPICS BASE Versions 3.13.7 |
881 | +# and higher are distributed subject to a Software License Agreement found |
882 | +# in file LICENSE that is included with this distribution. |
883 | +#************************************************************************* |
884 | +# |
885 | +# Site-specific EPICS environment settings |
886 | +# |
887 | +# Attempts to set EPICS_HOST_ARCH. Optionally, adds the EPICS Base |
888 | +# install host architecture bin directory to PATH. |
889 | +# |
890 | + |
891 | +#----------------------------------------------------------------------- |
892 | +# Site serviceable parts (These definitions may be modified) |
893 | +#----------------------------------------------------------------------- |
894 | + |
895 | +# Automatically set up the environment when possible ("yes" or "no"). |
896 | +# If set to yes, as much of the environment will be set up as possible. |
897 | +# If set to no, just the minimum environment will be set up. More |
898 | +# specific _auto_* definitions take precedence over this definition. |
899 | +_auto=no |
900 | + |
901 | +# Automatically append to PATH ("yes" or "no"). If set to yes, the |
902 | +# EPICS Base install host architecture bin directory will be added to |
903 | +# PATH if possible. If set to no, the bin directory will not be added |
904 | +# to PATH. |
905 | +_auto_path_append=$_auto |
906 | + |
907 | +# The program used to run Perl scripts (pathname). |
908 | +_perl_prog=perl |
909 | + |
910 | +# The EPICS host architecture specification for EPICS_HOST_ARCH |
911 | +# (<os>-<arch>[-<toolset>] as defined in configure/CONFIG_SITE). If |
912 | +# nonempty, the value will be used as the value of EPICS_HOST_ARCH. If |
913 | +# empty, an attempt will be made to automatically determine the value |
914 | +# with EpicsHostArch.pl. |
915 | +_epics_host_arch= |
916 | + |
917 | +# The install location of EPICS Base (pathname). If nonempty, the |
918 | +# EpicsHostArch.pl script from it, if it exists, will be used to |
919 | +# determine EPICS_HOST_ARCH. If nonempty and EPICS_HOST_ARCH was |
920 | +# determined successfully, it will be used to add the host architecture |
921 | +# bin directory to PATH if _auto_path_append is yes. |
922 | +_epics_base= |
923 | + |
924 | +# The source location of EPICS Base (pathname). If nonempty, the |
925 | +# EpicsHostArch.pl script from it, if it exists and _epics_base is empty |
926 | +# or it did not exist in the _epics_base location, will be used to |
927 | +# determine EPICS_HOST_ARCH. |
928 | +_epics_base_src= |
929 | + |
930 | +#----------------------------------------------------------------------- |
931 | +# Internal parts (There is typically no need to modify these) |
932 | +#----------------------------------------------------------------------- |
933 | + |
934 | +# Define the possible locations of EpicsHostArch.pl |
935 | +_epics_host_arch_pl= |
936 | +_src_epics_host_arch_pl= |
937 | +if [ -n "$_epics_base" ]; then |
938 | + _epics_host_arch_pl="$_epics_base/lib/perl/EpicsHostArch.pl" |
939 | +fi |
940 | +if [ -n "$_epics_base_src" ]; then |
941 | + _src_epics_host_arch_pl="$_epics_base_src/src/tools/EpicsHostArch.pl" |
942 | +fi |
943 | + |
944 | +# Set the EPICS host architecture specification |
945 | +if [ -n "$_epics_host_arch" ]; then |
946 | + EPICS_HOST_ARCH=$_epics_host_arch |
947 | + export EPICS_HOST_ARCH |
948 | +elif [ -e "$_epics_host_arch_pl" ]; then |
949 | + _epics_host_arch=$("$_perl_prog" "$_epics_host_arch_pl") |
950 | + EPICS_HOST_ARCH=$_epics_host_arch |
951 | + export EPICS_HOST_ARCH |
952 | +elif [ -e "$_src_epics_host_arch_pl" ]; then |
953 | + _epics_host_arch=$("$_perl_prog" "$_src_epics_host_arch_pl") |
954 | + EPICS_HOST_ARCH=$_epics_host_arch |
955 | + export EPICS_HOST_ARCH |
956 | +fi |
957 | + |
958 | +# Add the EPICS Base host architecture bin directory to PATH |
959 | +if [ "$_auto_path_append" = yes ]; then |
960 | + if [ -n "$_epics_base" ] && [ -n "$_epics_host_arch" ]; then |
961 | + PATH="$PATH:$_epics_base/bin/$_epics_host_arch" |
962 | + export PATH |
963 | + fi |
964 | +fi |
965 | + |
966 | +# Don't leak variables into the environment |
967 | +unset _auto |
968 | +unset _auto_path_append |
969 | +unset _perl_prog |
970 | +unset _epics_host_arch |
971 | +unset _epics_base |
972 | +unset _epics_base_src |
973 | +unset _epics_host_arch_pl |
974 | +unset _src_epics_host_arch_pl |
975 | diff --git a/startup/win32.bat b/startup/win32.bat |
976 | index af9155d..6652fc9 100644 |
977 | --- a/startup/win32.bat |
978 | +++ b/startup/win32.bat |
979 | @@ -1,147 +1,105 @@ |
980 | -@ECHO OFF |
981 | -REM ************************************************************************* |
982 | -REM Copyright (c) 2002 The University of Chicago, as Operator of Argonne |
983 | -REM National Laboratory. |
984 | -REM Copyright (c) 2002 The Regents of the University of California, as |
985 | -REM Operator of Los Alamos National Laboratory. |
986 | -REM EPICS BASE Versions 3.13.7 |
987 | -REM and higher are distributed subject to a Software License Agreement found |
988 | -REM in file LICENSE that is included with this distribution. |
989 | -REM ************************************************************************* |
990 | -REM |
991 | -REM Site-specific EPICS environment settings |
992 | -REM |
993 | -REM sites should modify these definitions |
994 | - |
995 | -REM ====================================================== |
996 | -REM ====== REQUIRED ENVIRONMENT VARIABLES FOLLOW ====== |
997 | -REM ====================================================== |
998 | - |
999 | -REM ====================================================== |
1000 | -REM ---------------- WINDOWS --------------------------- |
1001 | -REM ====================================================== |
1002 | -REM ----- WIN95 ----- |
1003 | -REM set PATH=C:\WINDOWS;C:\WINDOWS\COMMAND |
1004 | -REM ----- WINNT, WIN2000 ----- |
1005 | -REM set PATH=C:\WINNT;C:\WINNT\SYSTEM32 |
1006 | -REM ----- WINXP, Vista, Windows 7 ----- |
1007 | -set PATH=C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\SYSTEM32\Wbem |
1008 | - |
1009 | -REM ====================================================== |
1010 | -REM ---------------- make and perl --------------------- |
1011 | -REM ====================================================== |
1012 | - |
1013 | -REM --------------- ActiveState perl ------------------- |
1014 | -set PATH=C:\Perl\bin;%PATH% |
1015 | - |
1016 | -REM --------------- mingw make ------------------------ |
1017 | -REM set PATH=C:\mingw-make\bin;%PATH% |
1018 | -REM set PATH=C:\mingw-make82-3\bin;%PATH% |
1019 | - |
1020 | -REM --------------- gnuwin32 make ---------------------- |
1021 | -set PATH=C:\gnuwin32\bin;%PATH% |
1022 | - |
1023 | -REM ====================================================== |
1024 | -REM ---------------- cygwin tools ------------------------ |
1025 | -REM ====================================================== |
1026 | -REM (make & perl if above perl and make are REMs) |
1027 | -REM Dont use cygwin GNU make and Perl! |
1028 | -REM cygwin contains tk/tcl, vim, perl, and many unix tools |
1029 | -REM need grep from here NOT from cvs directory |
1030 | -REM set PATH=%PATH%;.;.. |
1031 | -REM set PATH=%PATH%;c:\cygwin\bin |
1032 | - |
1033 | -REM ====================================================== |
1034 | -REM --------------- Visual c++ ------------------------- |
1035 | -REM ====================================================== |
1036 | - |
1037 | -REM ------ Microsoft Visual Studio 2005 ------ |
1038 | -REM call "C:\Program files\Microsoft Visual Studio 8\VC\vcvarsall.bat" x86_amd64 |
1039 | -REM set PATH=%PATH%;C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin |
1040 | -REM set INCLUDE=%INCLUDE%;C:\Program Files\Microsoft SDKs\Windows\v6.0A\include |
1041 | -REM REM set LIBPATH=%LIBPATH%;C:\Program Files\Microsoft SDKs\Windows\v6.0A\lib |
1042 | -REM set LIB=%LIB%;C:\Program Files\Microsoft SDKs\Windows\v6.0A\lib |
1043 | - |
1044 | -REM ------ Microsoft Visual Studio 2008 ------ |
1045 | -REM call "C:\Program files\Microsoft Visual Studio 9.0\VC\bin\vcvars32.bat" |
1046 | -REM call "C:\Program files\Microsoft Visual Studio 9.0\VC\vcvarsall.bat" x86_amd64 |
1047 | -REM set PATH=C:\Program Files\Microsoft SDKs\Windows\v7.0\bin;%PATH% |
1048 | -REM set INCLUDE=C:\Program Files\Microsoft SDKs\Windows\v7.0\include;%INCLUDE% |
1049 | -REM set LIBPATH=C:\Program Files\Microsoft SDKs\Windows\v7.0\lib;%LIBPATH% |
1050 | -REM set LIB=C:\Program Files\Microsoft SDKs\Windows\v7.0\lib;%LIB% |
1051 | - |
1052 | -REM ----- Visual Studion 2010 ----- |
1053 | -REM -- windows-x64 --- |
1054 | -REM call "C:\Program files\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" x64 |
1055 | -REM -- win32-x86 --- |
1056 | -call "C:\Program files\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" x86 |
1057 | - |
1058 | -REM ====================================================== |
1059 | -REM --------------- EPICS -------------------------------- |
1060 | -REM ====================================================== |
1061 | -REM set EPICS_HOST_ARCH=windows-x64 |
1062 | -set EPICS_HOST_ARCH=win32-x86 |
1063 | -set PATH=%PATH%;G:\epics\base\bin\%EPICS_HOST_ARCH% |
1064 | -set PATH=%PATH%;G:\epics\extensions\bin\%EPICS_HOST_ARCH% |
1065 | - |
1066 | -REM ====================================================== |
1067 | -REM ------- OPTIONAL ENVIRONMENT VARIABLES FOLLOW -------- |
1068 | -REM ====================================================== |
1069 | - |
1070 | -REM ====================================================== |
1071 | -REM ----------------- remote CVS ------------------------- |
1072 | -REM ====================================================== |
1073 | -REM set CVS_RSH=c:/cygwin/bin/ssh.exe |
1074 | -REM set CVSROOT=:ext:jba@aps.anl.gov:/usr/local/epicsmgr/cvsroot |
1075 | -REM set HOME=c:/users/%USERNAME% |
1076 | -REM set HOME=c:/users/jba |
1077 | - |
1078 | -REM ====================================================== |
1079 | -REM ------------------- Bazaar --------------------------- |
1080 | -REM ====================================================== |
1081 | -set PATH=%PATH%;C:\Program files\Bazaar |
1082 | - |
1083 | -REM ====================================================== |
1084 | -REM ----------------- GNU make flags --------------------- |
1085 | -REM ====================================================== |
1086 | -set MAKEFLAGS=-w |
1087 | - |
1088 | -REM ====================================================== |
1089 | -REM -------------- vim (use cygwin vim ) ----------------- |
1090 | -REM ====================================================== |
1091 | -REM HOME needed by vim to write .viminfo file. |
1092 | -REM VIM needed by vim to find _vimrc file. |
1093 | -REM set VIM=c:\cygwin |
1094 | - |
1095 | -REM ====================================================== |
1096 | -REM --------------- Epics Channel Access ----------------- |
1097 | -REM Modify and uncomment the following lines |
1098 | -REM to override the base/configure/CONFIG_ENV defaults |
1099 | -REM ====================================================== |
1100 | -REM set EPICS_CA_ADDR_LIST=n.n.n.n n.n.n.n |
1101 | -REM set EPICS_CA_AUTO_ADDR_LIST=YES |
1102 | - |
1103 | -REM set EPICS_CA_CONN_TMO=30.0 |
1104 | -REM set EPICS_CA_BEACON_PERIOD=15.0 |
1105 | -REM set EPICS_CA_REPEATER_PORT=5065 |
1106 | -REM set EPICS_CA_SERVER_PORT=5064 |
1107 | -REM set EPICS_TS_MIN_WEST=420 |
1108 | - |
1109 | -REM ====================================================== |
1110 | -REM --------------- JAVA --------------------------------- |
1111 | -REM ====================================================== |
1112 | -REM Needed for java extensions |
1113 | -REM set CLASSPATH=G:\epics\extensions\javalib |
1114 | -REM set PATH=%PATH%;C:\j2sdk1.4.1_01\bin |
1115 | -REM set CLASSPATH=%CLASSPATH%;C:\j2sdk1.4.1_01\lib\tools.jar |
1116 | - |
1117 | -REM ====================================================== |
1118 | -REM --------------- Exceed ------------------------------- |
1119 | -REM Needed for X11 extensions |
1120 | -REM ====================================================== |
1121 | -REM set EX_VER=7.10 |
1122 | -REM set EX_VER=12.00 |
1123 | -REM set EX_VER=14.00 |
1124 | -REM set PATH=%PATH%;C:\Exceed%EX_VER%\XDK\ |
1125 | -REM set PATH=%PATH%;C:\Program Files\Hummingbird\Connectivity\%EX_VER%\Exceed\ |
1126 | - |
1127 | +@echo off |
1128 | +rem ************************************************************************* |
1129 | +rem Copyright (c) 2017 UChicago Argonne LLC, as Operator of Argonne |
1130 | +rem National Laboratory. |
1131 | +rem Copyright (c) 2002 The Regents of the University of California, as |
1132 | +rem Operator of Los Alamos National Laboratory. |
1133 | +rem EPICS BASE is distributed subject to a Software License Agreement found |
1134 | +rem in file LICENSE that is included with this distribution. |
1135 | +rem ************************************************************************* |
1136 | +rem |
1137 | +rem Site-specific EPICS environment settings |
1138 | +rem |
1139 | +rem Sets EPICS_HOST_ARCH and the environment for Microsoft Visual Studio. |
1140 | +rem Optionally, resets PATH, adds Strawberry Perl to PATH, and adds the |
1141 | +rem EPICS Base install host architecture bin directory to PATH. |
1142 | +rem |
1143 | + |
1144 | +rem ---------------------------------------------------------------------- |
1145 | +rem Site serviceable parts (These definitions may be modified) |
1146 | +rem ---------------------------------------------------------------------- |
1147 | + |
1148 | +rem The values of the definitions in this section must not contain |
1149 | +rem double-quotes. |
1150 | +rem |
1151 | +rem * Right: set _foo=C:\foo |
1152 | +rem * Right: set "_foo=C:\foo" |
1153 | +rem * Wrong: set _foo="C:\foo" |
1154 | + |
1155 | +rem Automatically set up the environment when possible ("yes" or "no"). |
1156 | +rem If set to yes, as much of the environment will be set up as possible. |
1157 | +rem If set to no, just the minimum environment will be set up. More |
1158 | +rem specific _auto_* definitions take precedence over this definition. |
1159 | +set _auto=no |
1160 | + |
1161 | +rem Automatically reset PATH ("yes" or "no"). If set to yes, PATH will |
1162 | +rem be reset to the value of _path_new. If set to no, PATH will not be |
1163 | +rem reset. |
1164 | +set _auto_path_reset=%_auto% |
1165 | + |
1166 | +rem Automatically append to PATH ("yes" or "no"). If set to yes, the |
1167 | +rem EPICS Base install host architecture bin directory will be added to |
1168 | +rem PATH if possible. If set to no, the bin directory will not be added |
1169 | +rem to PATH. |
1170 | +set _auto_path_append=%_auto% |
1171 | + |
1172 | +rem The new value for PATH. If _auto_path_reset is yes, PATH will be set |
1173 | +rem to it. |
1174 | +set _path_new=C:\Windows\System32;C:\Windows;C:\Windows\System32\wbem |
1175 | + |
1176 | +rem The location of Strawberry Perl (pathname). If empty, Strawberry Perl |
1177 | +rem is assumed to already be in PATH and will not be added. If nonempty, |
1178 | +rem Strawberry Perl will be added to PATH. |
1179 | +set _strawberry_perl_home=C:\Strawberry |
1180 | + |
1181 | +rem The location of Microsoft Visual Studio (pathname). |
1182 | +set _visual_studio_home=C:\Program Files (x86)\Microsoft Visual Studio 14.0 |
1183 | + |
1184 | +rem The EPICS host architecture specification for EPICS_HOST_ARCH |
1185 | +rem (<os>-<arch>[-<toolset>] as defined in configure/CONFIG_SITE). |
1186 | +set _epics_host_arch=win32-x86 |
1187 | + |
1188 | +rem The install location of EPICS Base (pathname). If nonempty and |
1189 | +rem _auto_path_append is yes, it will be used to add the host architecture |
1190 | +rem bin directory to PATH. |
1191 | +set _epics_base= |
1192 | + |
1193 | +rem ---------------------------------------------------------------------- |
1194 | +rem Internal parts (There is typically no need to modify these) |
1195 | +rem ---------------------------------------------------------------------- |
1196 | + |
1197 | +rem Reset PATH |
1198 | +if "%_auto_path_reset%" == "yes" ( |
1199 | + set "PATH=%_path_new%" |
1200 | +) |
1201 | + |
1202 | +rem Add Strawberry Perl to PATH |
1203 | +if "%_strawberry_perl_home%" == "" goto after_add_strawberry_perl |
1204 | +rem Can't do this inside parentheses because PATH would be read only once |
1205 | +set "PATH=%PATH%;%_strawberry_perl_home%\c\bin" |
1206 | +set "PATH=%PATH%;%_strawberry_perl_home%\perl\site\bin" |
1207 | +set "PATH=%PATH%;%_strawberry_perl_home%\perl\bin" |
1208 | +:after_add_strawberry_perl |
1209 | + |
1210 | +rem Set the environment for Microsoft Visual Studio |
1211 | +call "%_visual_studio_home%\VC\vcvarsall.bat" x86 |
1212 | + |
1213 | +rem Set the EPICS host architecture specification |
1214 | +set "EPICS_HOST_ARCH=%_epics_host_arch%" |
1215 | + |
1216 | +rem Add the EPICS Base host architecture bin directory to PATH |
1217 | +if "%_auto_path_append%" == "yes" ( |
1218 | + if not "%_epics_base%" == "" ( |
1219 | + set "PATH=%PATH%;%_epics_base%\bin\%_epics_host_arch%" |
1220 | + ) |
1221 | +) |
1222 | + |
1223 | +rem Don't leak variables into the environment |
1224 | +set _auto= |
1225 | +set _auto_path_reset= |
1226 | +set _auto_path_append= |
1227 | +set _path_new= |
1228 | +set _strawberry_perl_home= |
1229 | +set _visual_studio_home= |
1230 | +set _epics_host_arch= |
1231 | +set _epics_base= |
1232 | diff --git a/startup/windows.bat b/startup/windows.bat |
1233 | new file mode 100644 |
1234 | index 0000000..877c0d5 |
1235 | --- /dev/null |
1236 | +++ b/startup/windows.bat |
1237 | @@ -0,0 +1,105 @@ |
1238 | +@echo off |
1239 | +rem ************************************************************************* |
1240 | +rem Copyright (c) 2017 UChicago Argonne LLC, as Operator of Argonne |
1241 | +rem National Laboratory. |
1242 | +rem Copyright (c) 2002 The Regents of the University of California, as |
1243 | +rem Operator of Los Alamos National Laboratory. |
1244 | +rem EPICS BASE is distributed subject to a Software License Agreement found |
1245 | +rem in file LICENSE that is included with this distribution. |
1246 | +rem ************************************************************************* |
1247 | +rem |
1248 | +rem Site-specific EPICS environment settings |
1249 | +rem |
1250 | +rem Sets EPICS_HOST_ARCH and the environment for Microsoft Visual Studio. |
1251 | +rem Optionally, resets PATH, adds Strawberry Perl to PATH, and adds the |
1252 | +rem EPICS Base install host architecture bin directory to PATH. |
1253 | +rem |
1254 | + |
1255 | +rem ---------------------------------------------------------------------- |
1256 | +rem Site serviceable parts (These definitions may be modified) |
1257 | +rem ---------------------------------------------------------------------- |
1258 | + |
1259 | +rem The values of the definitions in this section must not contain |
1260 | +rem double-quotes. |
1261 | +rem |
1262 | +rem * Right: set _foo=C:\foo |
1263 | +rem * Right: set "_foo=C:\foo" |
1264 | +rem * Wrong: set _foo="C:\foo" |
1265 | + |
1266 | +rem Automatically set up the environment when possible ("yes" or "no"). |
1267 | +rem If set to yes, as much of the environment will be set up as possible. |
1268 | +rem If set to no, just the minimum environment will be set up. More |
1269 | +rem specific _auto_* definitions take precedence over this definition. |
1270 | +set _auto=no |
1271 | + |
1272 | +rem Automatically reset PATH ("yes" or "no"). If set to yes, PATH will |
1273 | +rem be reset to the value of _path_new. If set to no, PATH will not be |
1274 | +rem reset. |
1275 | +set _auto_path_reset=%_auto% |
1276 | + |
1277 | +rem Automatically append to PATH ("yes" or "no"). If set to yes, the |
1278 | +rem EPICS Base install host architecture bin directory will be added to |
1279 | +rem PATH if possible. If set to no, the bin directory will not be added |
1280 | +rem to PATH. |
1281 | +set _auto_path_append=%_auto% |
1282 | + |
1283 | +rem The new value for PATH. If _auto_path_reset is yes, PATH will be set |
1284 | +rem to it. |
1285 | +set _path_new=C:\Windows\System32;C:\Windows;C:\Windows\System32\wbem |
1286 | + |
1287 | +rem The location of Strawberry Perl (pathname). If empty, Strawberry Perl |
1288 | +rem is assumed to already be in PATH and will not be added. If nonempty, |
1289 | +rem Strawberry Perl will be added to PATH. |
1290 | +set _strawberry_perl_home=C:\Strawberry |
1291 | + |
1292 | +rem The location of Microsoft Visual Studio (pathname). |
1293 | +set _visual_studio_home=C:\Program Files (x86)\Microsoft Visual Studio 14.0 |
1294 | + |
1295 | +rem The EPICS host architecture specification for EPICS_HOST_ARCH |
1296 | +rem (<os>-<arch>[-<toolset>] as defined in configure/CONFIG_SITE). |
1297 | +set _epics_host_arch=windows-x64 |
1298 | + |
1299 | +rem The install location of EPICS Base (pathname). If nonempty and |
1300 | +rem _auto_path_append is yes, it will be used to add the host architecture |
1301 | +rem bin directory to PATH. |
1302 | +set _epics_base= |
1303 | + |
1304 | +rem ---------------------------------------------------------------------- |
1305 | +rem Internal parts (There is typically no need to modify these) |
1306 | +rem ---------------------------------------------------------------------- |
1307 | + |
1308 | +rem Reset PATH |
1309 | +if "%_auto_path_reset%" == "yes" ( |
1310 | + set "PATH=%_path_new%" |
1311 | +) |
1312 | + |
1313 | +rem Add Strawberry Perl to PATH |
1314 | +if "%_strawberry_perl_home%" == "" goto after_add_strawberry_perl |
1315 | +rem Can't do this inside parentheses because PATH would be read only once |
1316 | +set "PATH=%PATH%;%_strawberry_perl_home%\c\bin" |
1317 | +set "PATH=%PATH%;%_strawberry_perl_home%\perl\site\bin" |
1318 | +set "PATH=%PATH%;%_strawberry_perl_home%\perl\bin" |
1319 | +:after_add_strawberry_perl |
1320 | + |
1321 | +rem Set the environment for Microsoft Visual Studio |
1322 | +call "%_visual_studio_home%\VC\vcvarsall.bat" x64 |
1323 | + |
1324 | +rem Set the EPICS host architecture specification |
1325 | +set "EPICS_HOST_ARCH=%_epics_host_arch%" |
1326 | + |
1327 | +rem Add the EPICS Base host architecture bin directory to PATH |
1328 | +if "%_auto_path_append%" == "yes" ( |
1329 | + if not "%_epics_base%" == "" ( |
1330 | + set "PATH=%PATH%;%_epics_base%\bin\%_epics_host_arch%" |
1331 | + ) |
1332 | +) |
1333 | + |
1334 | +rem Don't leak variables into the environment |
1335 | +set _auto= |
1336 | +set _auto_path_reset= |
1337 | +set _auto_path_append= |
1338 | +set _path_new= |
1339 | +set _strawberry_perl_home= |
1340 | +set _visual_studio_home= |
1341 | +set _epics_host_arch= |
1342 | +set _epics_base= |
@Martin: Thanks for reviewing this.