Merge ~epics-contrib/epics-base/+git/contrib:tidy-startup into ~epics-core/epics-base/+git/epics-base: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
Reviewer Review Type Date Requested Status
Martin Konrad (community) Needs Fixing
EPICS Core Developers Pending
Review via email: mp+352919@code.launchpad.net

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 :

@Martin: Thanks for reviewing this.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
diff --git a/ci/travis-build.sh b/ci/travis-build.sh
index a3ca3fd..2ee5d65 100644
--- a/ci/travis-build.sh
+++ b/ci/travis-build.sh
@@ -17,7 +17,7 @@ ticker() {
1717
18CACHEKEY=118CACHEKEY=1
1919
20EPICS_HOST_ARCH=`sh startup/EpicsHostArch`20EPICS_HOST_ARCH=`perl src/tools/EpicsHostArch.pl`
2121
22[ -e configure/os/CONFIG_SITE.Common.linux-x86 ] || die "Wrong location: $PWD"22[ -e configure/os/CONFIG_SITE.Common.linux-x86 ] || die "Wrong location: $PWD"
2323
diff --git a/configure/CONFIG b/configure/CONFIG
index 6fe6b9b..f5ba0b7 100644
--- a/configure/CONFIG
+++ b/configure/CONFIG
@@ -20,11 +20,15 @@ else
20endif20endif
2121
22# Provide a default if the user hasn't set EPICS_HOST_ARCH22# Provide a default if the user hasn't set EPICS_HOST_ARCH
23#
23ifeq ($(origin EPICS_HOST_ARCH), undefined)24ifeq ($(origin EPICS_HOST_ARCH), undefined)
25 # Bootstrapping ...
26 EHA := $(firstword $(wildcard $(EPICS_BASE)/lib/perl/EpicsHostArch.pl \
27 $(TOP)/src/tools/EpicsHostArch.pl))
24 # NB: We use a simply expanded variable here for performance:28 # NB: We use a simply expanded variable here for performance:
25 EPICS_HOST_ARCH := $(shell $(CONFIG)/../startup/EpicsHostArch.pl)29 export EPICS_HOST_ARCH := $(shell perl $(EHA))
30 undefine EHA
26endif31endif
27#
2832
29-include $(CONFIG)/os/CONFIG_COMPAT33-include $(CONFIG)/os/CONFIG_COMPAT
3034
diff --git a/documentation/README.1st b/documentation/README.1st
index 462ac46..7a6e770 100644
--- a/documentation/README.1st
+++ b/documentation/README.1st
@@ -221,14 +221,11 @@
221221
222 base/startup directory - contains scripts to set environment and path222 base/startup directory - contains scripts to set environment and path
223223
224 EpicsHostArch C shell script to set EPICS_HOST_ARCH env variable224 EpicsHostArch Shell script to set EPICS_HOST_ARCH env variable
225 EpicsHostArch.pl Perl script to set EPICS_HOST_ARCH env variable225 unix.csh C shell script to set path and env variables
226 Site.profile bourne shell script to set path and env variables226 unix.sh Bourne shell script to set path and env variables
227 Site.cshrc c shell script to set path and env variables227 win32.bat Bat file example to configure win32-x86 target
228 borland.bat WIN32 bat file to set borland path and env variables228 windows.bat Bat file example to configure windows-x64 target
229 cygwin.bat WIN32 bat file to set cygwin path and env variables
230 win32.bat WIN32 bat file to set path and env variables
231 win32-debug.bat WIN32 debug bat file to set debug path and env variables
232229
233 base/configure directory - contains build definitions and rules230 base/configure directory - contains build definitions and rules
234231
diff --git a/documentation/README.darwin.html b/documentation/README.darwin.html
index cbc2901..dd11ce8 100644
--- a/documentation/README.darwin.html
+++ b/documentation/README.darwin.html
@@ -21,7 +21,7 @@ of my Bash login script (~/.bash_login):
21#21#
22EPICS_BASE="${HOME}/src/EPICS/base"22EPICS_BASE="${HOME}/src/EPICS/base"
23EPICS_EXTENSIONS="${HOME}/src/EPICS/extensions"23EPICS_EXTENSIONS="${HOME}/src/EPICS/extensions"
24<strong>.</strong> "${EPICS_BASE}"/startup/Site.profile24<strong>.</strong> "${EPICS_BASE}"/startup/unix.sh
25</pre>25</pre>
26</li>26</li>
27<li>27<li>
diff --git a/documentation/README.html b/documentation/README.html
index a8a5723..98ec1b1 100644
--- a/documentation/README.html
+++ b/documentation/README.html
@@ -230,14 +230,11 @@
230230
231<H4>base/startup directory - contains scripts to set environment and path</H4>231<H4>base/startup directory - contains scripts to set environment and path</H4>
232<PRE>232<PRE>
233 EpicsHostArch C shell script to set EPICS_HOST_ARCH env variable233 EpicsHostArch Shell script to set EPICS_HOST_ARCH env variable
234 EpicsHostArch.pl Perl script to set EPICS_HOST_ARCH env variable234 unix.csh C shell script to set path and env variables
235 Site.profile bourne shell script to set path and env variables235 unix.sh Bourne shell script to set path and env variables
236 Site.cshrc c shell script to set path and env variables236 win32.bat Bat file example to configure win32-x86 target
237 borland.bat WIN32 bat file to set borland path and env variables237 windows.bat Bat file example to configure windows-x64 target
238 cygwin.bat WIN32 bat file to set cygwin path and env variables
239 win32.bat WIN32 bat file to set path and env variables
240 win32-debug.bat WIN32 debug bat file to set debug path and env variables
241</PRE>238</PRE>
242239
243<H4>base/configure directory - contains build definitions and rules</H4>240<H4>base/configure directory - contains build definitions and rules</H4>
diff --git a/documentation/RELEASE_NOTES.html b/documentation/RELEASE_NOTES.html
index bb7dd93..28c2e74 100644
--- a/documentation/RELEASE_NOTES.html
+++ b/documentation/RELEASE_NOTES.html
@@ -16,6 +16,7 @@ Base-3.15 series or to EPICS 7.</p>
1616
17<!-- Insert new items immediately below here ... -->17<!-- Insert new items immediately below here ... -->
1818
19<<<<<<< documentation/RELEASE_NOTES.html
19<h3>Recent Apple XCode Build Issues</h3>20<h3>Recent Apple XCode Build Issues</h3>
2021
21<p>The latest version of XCode will not compile calls to <tt>system()</tt> or22<p>The latest version of XCode will not compile calls to <tt>system()</tt> or
@@ -31,6 +32,46 @@ for a field like HSV to get set to a value that is not a legal alarm severity,
31but the core IOC code should never copy such a value into a record's SEVR or32but the core IOC code should never copy such a value into a record's SEVR or
32ACKS fields. With this fix the record's alarm severity will be limited to33ACKS fields. With this fix the record's alarm severity will be limited to
33INVALID_ALARM.</p>34INVALID_ALARM.</p>
35=======
36<h3>Cleanup of startup directory</h3>
37
38<p>The files in the startup directory have not been maintained in recent years
39and have grown crufty (technical term). This release includes the following
40updates to these files:</p>
41
42<ul>
43
44<li>The Perl <tt>EpicsHostArch.pl</tt> script has been rewritten, and support
45for a few previously missing host architectures has been added to it.</li>
46
47<li>The <tt>EpicsHostArch.pl</tt> script has also been moved into the standard
48<tt>src/tools</tt> directory, from where it will be installed into
49<tt>lib/perl</tt>. In this new location it is no longer executable, so it must
50be run by the <tt>perl</tt> executable.</li>
51
52<li>The build system has been adjusted to look for <tt>EpicsHostArch.pl</tt> in
53both places if the <tt>EPICS_HOST_ARCH</tt> environment variable has not been
54set at build-time.</li>
55
56<li>Sites that used the original Perl script to set <tt>EPICS_HOST_ARCH</tt> as
57part of their standard environment will need to adjust their scripts when they
58upgrade to this release.</li>
59
60<li>The <tt>EpicsHostArch</tt> shell script has been replaced with a wrapper
61routine that calls the Perl <tt>EpicsHostArch.pl</tt> script. Sites that rely on
62this script to set <tt>EPICS_HOST_ARCH</tt> should consider switching to the
63Perl script instead.</li>
64
65<li>The <tt>Site.cshrc</tt> and <tt>Site.profile</tt> files have been renamed to
66<tt>unix.csh</tt> and <tt>unix.sh</tt>, respectively.</li>
67
68<li>The existing <tt>win32.bat</tt> file has been cleaned up and a new
69<tt>windows.bat</tt> file added for 64-bit targets. The contents of these files
70should be seen as examples, don't uncomment or install parts for software that
71you don't explicitly know that you need.</li>
72
73</ul>
74>>>>>>> documentation/RELEASE_NOTES.html
3475
35<h3>Fixes for Launchpad bugs</h3>76<h3>Fixes for Launchpad bugs</h3>
3677
diff --git a/src/tools/EpicsHostArch.pl b/src/tools/EpicsHostArch.pl
37new file mode 10064478new file mode 100644
index 0000000..e8e49bc
--- /dev/null
+++ b/src/tools/EpicsHostArch.pl
@@ -0,0 +1,55 @@
1#!/usr/bin/env perl
2#*************************************************************************
3# Copyright (c) 2018 UChicago Argonne LLC, as Operator of Argonne
4# National Laboratory.
5# EPICS BASE is distributed subject to a Software License Agreement found
6# in file LICENSE that is included with this distribution.
7#*************************************************************************
8
9# Returns an architecture name for EPICS_HOST_ARCH that should be
10# appropriate for the CPU that this version of Perl was built for.
11# Any arguments to the program will be appended with separator '-'
12# to allow flags like -gnu -debug and/or -static to be added.
13
14# Before Base has been built, use a command like this:
15# bash$ export EPICS_HOST_ARCH=`perl src/tools/EpicsHostArch.pl`
16#
17# If Base is already built, use
18# tcsh% setenv EPICS_HOST_ARCH `perl base/lib/perl/EpicsHostArch.pl`
19
20# If your architecture is not recognized by this script, please send
21# the output from running 'perl --version' to the EPICS tech-talk
22# mailing list to have it added.
23
24use strict;
25
26use Config;
27use POSIX;
28
29print join('-', HostArch(), @ARGV), "\n";
30
31sub HostArch {
32 my $arch = $Config{archname};
33 for ($arch) {
34 return 'linux-x86_64' if m/^x86_64-linux/;
35 return 'linux-x86' if m/^i[3-6]86-linux/;
36 return 'linux-arm' if m/^arm-linux/;
37 return 'windows-x64' if m/^MSWin32-x64/;
38 return 'win32-x86' if m/^MSWin32-x86/;
39 return "cygwin-x86_64" if m/^x86_64-cygwin/;
40 return "cygwin-x86" if m/^i[3-6]86-cygwin/;
41 return 'solaris-sparc' if m/^sun4-solaris/;
42 return 'solaris-x86' if m/^i86pc-solaris/;
43
44 my ($kernel, $hostname, $release, $version, $cpu) = uname;
45 if (m/^darwin/) {
46 for ($cpu) {
47 return 'darwin-x86' if m/^(i386|x86_64)/;
48 return 'darwin-ppc' if m/Power Macintosh/;
49 }
50 die "$0: macOS CPU type '$cpu' not recognized\n";
51 }
52
53 die "$0: Architecture '$arch' not recognized\n";
54 }
55}
diff --git a/src/tools/Makefile b/src/tools/Makefile
index bcf1270..c544703 100644
--- a/src/tools/Makefile
+++ b/src/tools/Makefile
@@ -16,6 +16,9 @@ PERL_MODULES += EPICS/Path.pm
16PERL_MODULES += EPICS/Release.pm16PERL_MODULES += EPICS/Release.pm
17PERL_MODULES += EPICS/Getopts.pm17PERL_MODULES += EPICS/Getopts.pm
1818
19# This goes into lib/perl, not bin/<host>
20PERL_MODULES += EpicsHostArch.pl
21
19PERL_SCRIPTS += convertRelease.pl22PERL_SCRIPTS += convertRelease.pl
20PERL_SCRIPTS += cvsclean.pl23PERL_SCRIPTS += cvsclean.pl
21PERL_SCRIPTS += dos2unix.pl24PERL_SCRIPTS += dos2unix.pl
diff --git a/startup/EpicsHostArch b/startup/EpicsHostArch
22old mode 10075525old mode 100755
23new mode 10064426new mode 100644
index 8861ac5..de7f3d5
--- a/startup/EpicsHostArch
+++ b/startup/EpicsHostArch
@@ -1,84 +1,21 @@
1#!/bin/sh1#!/bin/sh
2#*************************************************************************2# Script to find and run the Perl EpicsHostArch.pl script.
3# Copyright (c) 2011 UChicago Argonne LLC, as Operator of Argonne
4# National Laboratory.
5# Copyright (c) 2002 The Regents of the University of California, as
6# Operator of Los Alamos National Laboratory.
7# EPICS BASE is distributed subject to a Software License Agreement found
8# in file LICENSE that is included with this distribution.
9#*************************************************************************
10#
11# EpicsHostArch - returns the Epics host architecture suitable
12# for assigning to the EPICS_HOST_ARCH variable
133
14if [ "x${1}" != "x" ]4# This script is provided for backwards-compatibility only and may be
15then5# dropped from future releases of Base. Please adjust callers to run
16 suffix="-"${1}6# the Perl version directly as this startup directory isn't copied to
17else7# INSTALL_LOCATION by the EPICS build system.
18 suffix=""
19fi
208
21sysname=`uname`9EHA=EpicsHostArch.pl
2210
23case $sysname in11cd "$(dirname "$0")/.."
24 Linux )
25 os=linux
26 cpu=`uname -m`
27 case $cpu in
28 i386 | i486 | i586 | i686 )
29 cpu=x86 ;;
30 x86_64 )
31 ;; # $cpu is correct
32 armv6l | armv7l )
33 cpu=arm ;;
34 esac
35 echo ${os}-${cpu}${suffix}
36 ;;
37 Darwin )
38 os=darwin
39 cpu=`uname -m`
40 case $cpu in
41 "Power Macintosh")
42 cpu=ppc ;;
43 i386 | x86_64 )
44 cpu=x86 ;;
45 esac
46 echo ${os}-${cpu}${suffix}
47 ;;
48 SunOS )
49 version=`uname -r | sed '1s/^\([0-9]*\).*$/\1/'`
50 if [ ${version} -ge 5 ]; then
51 os=solaris
52 else
53 os=sun4
54 fi
55 cpu=`uname -m`
56 case $cpu in
57 sun4*)
58 cpu=sparc
59 ;;
60 i86pc)
61 cpu=x86
62 ;;
63 esac
64 echo ${os}-${cpu}${suffix}
65 ;;
66 * )
67 sysname=`uname -o`
68 case $sysname in
69 Cygwin )
70 os=cygwin
71 cpu=`uname -m`
72 case $cpu in i386 | i486 | i586 | i686 )
73 cpu=x86
74 ;;
75 esac
76 echo ${os}-${cpu}${suffix}
77 ;;
78 * )
79 echo unsupported
80 ;;
81 esac
82 ;;
83esac
8412
13# Perl script will be installed into lib/perl
14[[ -f lib/perl/$EHA ]] && exec perl lib/perl/$EHA $*
15
16# If Base hasn't been built yet, use the source Luke
17[[ -f src/tools/$EHA ]] && exec perl src/tools/$EHA $*
18
19# Die with an error message
20echo "$0: Can't find $EHA" >&2
21exit 1
diff --git a/startup/EpicsHostArch.pl b/startup/EpicsHostArch.pl
85deleted file mode 10075522deleted file mode 100755
index 09f7ffd..0000000
--- a/startup/EpicsHostArch.pl
+++ /dev/null
@@ -1,47 +0,0 @@
1eval 'exec perl -S $0 ${1+"$@"}' # -*- Mode: perl -*-
2 if $running_under_some_shell; # EpicsHostArch.pl
3#*************************************************************************
4# Copyright (c) 2011 UChicago Argonne LLC, as Operator of Argonne
5# National Laboratory.
6# Copyright (c) 2002 The Regents of the University of California, as
7# Operator of Los Alamos National Laboratory.
8# EPICS BASE is distributed subject to a Software License Agreement found
9# in file LICENSE that is included with this distribution.
10#*************************************************************************
11
12# Returns the Epics host architecture suitable
13# for assigning to the EPICS_HOST_ARCH variable
14
15use Config;
16use POSIX;
17
18$suffix="";
19$suffix="-".$ARGV[0] if ($ARGV[0] ne "");
20
21$EpicsHostArch = GetEpicsHostArch();
22print "$EpicsHostArch$suffix";
23
24sub GetEpicsHostArch { # no args
25 $arch=$Config{'archname'};
26 if ($arch =~ /sun4-solaris/) { return "solaris-sparc";
27 } elsif ($arch =~ m/i86pc-solaris/) { return "solaris-x86";
28 } elsif ($arch =~ m/i[3-6]86-linux/){ return "linux-x86";
29 } elsif ($arch =~ m/x86_64-linux/) { return "linux-x86_64";
30 } elsif ($arch =~ m/arm-linux/) { return "linux-arm";
31 } elsif ($arch =~ m/MSWin32-x86/) { return "win32-x86";
32 } elsif ($arch =~ m/MSWin32-x64/) { return "windows-x64";
33 } elsif ($arch =~ m/cygwin/) {
34 my($kernel, $hostname, $release, $version, $cpu) = POSIX::uname();
35 if ($cpu =~ m/x86_64/) { return "cygwin-x86_64"; }
36 return "cygwin-x86";
37 } elsif ($arch =~ m/darwin/) {
38 my($kernel, $hostname, $release, $version, $cpu) = POSIX::uname();
39 if ($cpu =~ m/Power Macintosh/) { return "darwin-ppc"; }
40 elsif ($cpu =~ m/i386/) { return "darwin-x86"; }
41 elsif ($cpu =~ m/x86_64/) { return "darwin-x86"; }
42 else { return "unsupported"; }
43 } else { return "unsupported"; }
44}
45
46#EOF EpicsHostArch.pl
47
diff --git a/startup/Site.cshrc b/startup/Site.cshrc
48deleted file mode 1007550deleted file mode 100755
index 23453cb..0000000
--- a/startup/Site.cshrc
+++ /dev/null
@@ -1,118 +0,0 @@
1#!/bin/csh -f
2#*************************************************************************
3# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
4# National Laboratory.
5# Copyright (c) 2002 The Regents of the University of California, as
6# Operator of Los Alamos National Laboratory.
7# EPICS BASE Versions 3.13.7
8# and higher are distributed subject to a Software License Agreement found
9# in file LICENSE that is included with this distribution.
10#*************************************************************************
11# Site-specific EPICS environment settings
12#
13# sites should modify these definitions
14
15# Location of epics base
16if ( ! $?EPICS_BASE ) then
17 set EPICS_BASE=/usr/local/epics/base
18endif
19
20# Location of epics extensions
21if ( ! $?EPICS_EXTENSIONS ) then
22 setenv EPICS_EXTENSIONS /usr/local/epics/extensions
23endif
24
25# Postscript printer definition needed by some extensions (eg medm, dp, dm, ...)
26if ( ! $?PSPRINTTER ) then
27 setenv PSPRINTER lp
28endif
29
30# Needed only by medm extension
31#setenv EPICS_DISPLAY_PATH
32# Needed only by medm extension
33setenv BROWSER firefox
34
35# Needed only by orbitscreen extension
36if ( ! $?ORBITSCREENHOME ) then
37 setenv ORBITSCREENHOME $EPICS_EXTENSIONS/src/orbitscreen
38endif
39
40# Needed only by adt extension
41if ( ! $?ADTHOME ) then
42 setenv ADTHOME /usr/local/oag/apps/src/appconfig/adt
43 echo $ADTHOME
44endif
45
46# Needed only by ar extension (archiver)
47setenv EPICS_AR_PORT 7002
48
49# Needed for java extensions
50if ( $?CLASSPATH ) then
51 setenv CLASSPATH "${CLASSPATH}:${EPICS_EXTENSIONS}/javalib"
52else
53 setenv CLASSPATH "${EPICS_EXTENSIONS}/javalib"
54endif
55
56# Allow private versions of extensions without a bin subdir
57if ( $?EPICS_EXTENSIONS_PVT ) then
58 set path = ( $path $EPICS_EXTENSIONS_PVT)
59endif
60
61##################################################################
62
63# Start of set R3.14 environment variables
64
65setenv EPICS_HOST_ARCH `$EPICS_BASE/startup/EpicsHostArch.pl`
66
67# Allow private versions of base
68if ( $?EPICS_BASE_PVT ) then
69 if ( -e $EPICS_BASE_PVT/bin/$EPICS_HOST_ARCH ) then
70 set path = ( $path $EPICS_BASE_PVT/bin/$EPICS_HOST_ARCH)
71 endif
72endif
73
74# Allow private versions of extensions
75if ( $?EPICS_EXTENSIONS_PVT ) then
76 if ( -e $EPICS_EXTENSIONS_PVT/bin/$EPICS_HOST_ARCH ) then
77 set path = ( $path $EPICS_EXTENSIONS_PVT/bin/$EPICS_HOST_ARCH)
78 endif
79endif
80set path = ( $path $EPICS_EXTENSIONS/bin/$EPICS_HOST_ARCH )
81
82# End of set R3.14 environment variables
83##################################################################
84
85
86## Start of set pre R3.14 environment variables
87#
88## Time service:
89## EPICS_TS_MIN_WEST the local time difference from GMT.
90#setenv EPICS_TS_MIN_WEST 360
91#
92#if ( -e /usr/local/etc/setup/HostArch.pl ) then
93# setenv HOST_ARCH `/usr/local/etc/setup/HostArch.pl`
94#else
95# setenv HOST_ARCH `/usr/local/epics/startup/HostArch.pl`
96#endif
97#
98## Allow private versions of extensions
99#if ( $?EPICS_EXTENSIONS_PVT ) then
100# if ( -e $EPICS_EXTENSIONS_PVT/bin/$HOST_ARCH ) then
101# set path = ( $path $EPICS_EXTENSIONS_PVT/bin/$HOST_ARCH)
102# endif
103# # Needed if shared extension libraries are built
104# if ( -e $EPICS_EXTENSIONS_PVT/lib/$HOST_ARCH ) then
105# if ( $?LD_LIBRARY_PATH ) then
106# setenv LD_LIBRARY_PATH "${LD_LIBRARY_PATH}:${EPICS_EXTENSIONS_PVT}/lib/${HOST_ARCH}"
107# else
108# setenv LD_LIBRARY_PATH "${EPICS_EXTENSIONS_PVT}/lib/${HOST_ARCH}"
109# endif
110# endif
111#endif
112#
113#set path = ( $path $EPICS_EXTENSIONS/bin/$HOST_ARCH )
114## Needed if shared extension libraries are built
115#setenv LD_LIBRARY_PATH "${LD_LIBRARY_PATH}:${EPICS_EXTENSIONS}/lib/${HOST_ARCH}"
116
117# End of set pre R3.14 environment variables
118##################################################################
diff --git a/startup/Site.profile b/startup/Site.profile
119deleted file mode 1007550deleted file mode 100755
index 5cb9b02..0000000
--- a/startup/Site.profile
+++ /dev/null
@@ -1,118 +0,0 @@
1#!/bin/sh
2#*************************************************************************
3# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
4# National Laboratory.
5# Copyright (c) 2002 The Regents of the University of California, as
6# Operator of Los Alamos National Laboratory.
7# EPICS BASE Versions 3.13.7
8# and higher are distributed subject to a Software License Agreement found
9# in file LICENSE that is included with this distribution.
10#*************************************************************************
11# Site-specific EPICS environment settings
12#
13# sites should modify these definitions
14
15# Location of epics base
16if [ -z "${MY_EPICS_BASE}" ] ; then
17 MY_EPICS_BASE=/usr/local/epics/base
18fi
19
20# Location of epics extensions (medm, msi, etc.)
21if [ -z "${EPICS_EXTENSIONS}" ] ; then
22 EPICS_EXTENSIONS=/usr/local/epics/extensions
23fi
24
25# Postscript printer definition needed by some extensions (eg medm, dp, dm, ...)
26if [ -z "${PSPRINTER}" ] ; then
27 export PSPRINTER=lp
28fi
29
30#Needed only by the idl and ezcaIDL extensions.
31#export EPICS_EXTENSIONS
32
33# Needed only by medm extension
34#export EPICS_DISPLAY_PATH=/path/to/adl/files
35export BROWSER=firefox
36
37# Needed only by orbitscreen extension
38#if [ -z "${ORBITSCREENHOME}" ] ; then
39# export "ORBITSCREENHOME=${EPICS_EXTENSIONS/src/orbitscreen}"
40#fi
41
42# Needed only by adt extension
43#if [ -z "${ADTHOME}" ] ; then
44# ADTHOME=
45# export ADTHOME
46#fi
47
48# Needed only by ar extension (archiver)
49#EPICS_AR_PORT=7002
50#export EPICS_AR_PORT
51
52# Needed for java extensions
53if [ -z "${CLASSPATH}" ] ; then
54 CLASSPATH="${EPICS_EXTENSIONS}/javalib"
55else
56 CLASSPATH="${CLASSPATH}:${EPICS_EXTENSIONS}/javalib"
57fi
58export CLASSPATH
59
60# Allow private versions of extensions without a bin subdir
61if [ -n "${EPICS_EXTENSIONS_PVT}" ] ; then
62 PATH="${PATH}:${EPICS_EXTENSIONS_PVT}"
63fi
64
65#---------------------------------------------------------------
66# Start of set R3.14 environment variables
67#
68EPICS_HOST_ARCH=`"${MY_EPICS_BASE}"/startup/EpicsHostArch.pl`
69export EPICS_HOST_ARCH
70
71# Allow private versions of base
72if [ -n "${EPICS_BASE_PVT}" ] ; then
73 if [ -d "${EPICS_BASE_PVT}/bin/${EPICS_HOST_ARCH}" ]; then
74 PATH="${PATH}:${EPICS_BASE_PVT}/bin/${EPICS_HOST_ARCH}"
75 fi
76fi
77
78# Allow private versions of extensions
79if [ -n "${EPICS_EXTENSIONS_PVT}" ] ; then
80 if [ -d "${EPICS_EXTENSIONS_PVT}/bin/${EPICS_HOST_ARCH}" ]; then
81 PATH="${PATH}:${EPICS_EXTENSIONS_PVT}/bin/${EPICS_HOST_ARCH}"
82 fi
83fi
84PATH="${PATH}:${EPICS_EXTENSIONS}/bin/${EPICS_HOST_ARCH}"
85
86# End of set R3.14 environment variables
87
88#---------------------------------------------------------------
89#
90## Start of set pre R3.14 environment variables
91#
92## Time service:
93## EPICS_TS_MIN_WEST the local time difference from GMT.
94#EPICS_TS_MIN_WEST=360
95#export EPICS_TS_MIN_WEST
96#
97#HOST_ARCH=`"${MY_EPICS_BASE}"/startup/HostArch`
98#export HOST_ARCH
99#
100## Allow private versions of base
101#if [ -n "${EPICS_BASE_PVT}" ] ; then
102# if [ -d "${EPICS_BASE_PVT}/bin/${HOST_ARCH}" ]; then
103# PATH="${PATH}:${EPICS_BASE_PVT}/bin/${HOST_ARCH}"
104# fi
105#fi
106#
107## Allow private versions of extensions
108#if [ -n "${EPICS_EXTENSIONS_PVT}" ] ; then
109# if [ -d "${EPICS_EXTENSIONS_PVT}/bin/${HOST_ARCH}" ]; then
110# PATH="${PATH}:${EPICS_EXTENSIONS_PVT}/bin/${HOST_ARCH}"
111# fi
112#fi
113#
114#PATH="${PATH}:${EPICS_EXTENSIONS}/lib/${HOST_ARCH}"
115#
116# End of set pre R3.14 environment variables
117
118#---------------------------------------------------------------
diff --git a/startup/cygwin.bat b/startup/cygwin.bat
119deleted file mode 1007550deleted file mode 100755
index ff75b53..0000000
--- a/startup/cygwin.bat
+++ /dev/null
@@ -1,122 +0,0 @@
1@ECHO OFF
2REM *************************************************************************
3REM Copyright (c) 2002 The University of Chicago, as Operator of Argonne
4REM National Laboratory.
5REM Copyright (c) 2002 The Regents of the University of California, as
6REM Operator of Los Alamos National Laboratory.
7REM EPICS BASE Versions 3.13.7
8REM and higher are distributed subject to a Software License Agreement found
9REM in file LICENSE that is included with this distribution.
10REM *************************************************************************
11REM
12REM Site-specific EPICS environment settings
13REM
14REM sites should modify these definitions
15
16REM ======================================================
17REM ====== REQUIRED ENVIRONMENT VARIABLES FOLLOW ======
18REM ======================================================
19
20REM ======================================================
21REM ---------------- WINDOWS ---------------------------
22REM ======================================================
23REM ----- WIN95 -----
24REM set PATH=C:\WINDOWS;C:\WINDOWS\COMMAND
25REM ----- WINNT, WIN2000 -----
26REM set PATH=C:\WINNT;C:\WINNT\SYSTEM32
27REM ----- WINXP, Vista, Windows 7 -----
28set PATH=C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\SYSTEM32\Wbem
29
30REM ======================================================
31REM ---------------- make and perl ---------------------
32REM ======================================================
33
34REM --------------- ActiveState perl -------------------
35set PATH=C:\Perl\bin;%PATH%
36
37REM --------------- mingw make ------------------------
38REM set PATH=C:\mingw-make\bin;%PATH%
39REM set PATH=C:\mingw-make82-3\bin;%PATH%
40
41REM --------------- gnuwin32 make ----------------------
42set PATH=C:\gnuwin32\bin;%PATH%
43
44REM ======================================================
45REM ---------------- cygwin tools ------------------------
46REM ======================================================
47REM (make & perl if above perl and make are REMs)
48REM Dont use cygwin GNU make and Perl!
49REM cygwin contains tk/tcl, vim, perl, and many unix tools
50REM need grep from here NOT from cvs directory
51set PATH=%PATH%;.;..
52set PATH=%PATH%;c:\cygwin\bin
53
54REM ======================================================
55REM --------------- EPICS --------------------------------
56REM ======================================================
57set EPICS_HOST_ARCH=cygwin-x86
58set PATH=%PATH%;G:\epics\base\bin\%EPICS_HOST_ARCH%
59set PATH=%PATH%;G:\epics\extensions\bin\%EPICS_HOST_ARCH%
60
61REM ======================================================
62REM ------- OPTIONAL ENVIRONMENT VARIABLES FOLLOW --------
63REM ======================================================
64
65REM ======================================================
66REM ----------------- remote CVS -------------------------
67REM ======================================================
68REM set CVS_RSH=c:/cygwin/bin/ssh.exe
69REM set CVSROOT=:ext:jba@aps.anl.gov:/usr/local/epicsmgr/cvsroot
70REM set HOME=c:/users/%USERNAME%
71REM set HOME=c:/users/jba
72
73REM ======================================================
74REM ------------------- Bazaar ---------------------------
75REM ======================================================
76set PATH=%PATH%;C:\Program files\Bazaar
77
78REM ======================================================
79REM ----------------- GNU make flags ---------------------
80REM ======================================================
81set MAKEFLAGS=-w
82
83REM ======================================================
84REM -------------- vim (use cygwin vim ) -----------------
85REM ======================================================
86REM HOME needed by vim to write .viminfo file.
87REM VIM needed by vim to find _vimrc file.
88REM set VIM=c:\cygwin
89
90REM ======================================================
91REM --------------- Epics Channel Access -----------------
92REM Modify and uncomment the following lines
93REM to override the base/configure/CONFIG_ENV defaults
94REM ======================================================
95REM set EPICS_CA_ADDR_LIST=n.n.n.n n.n.n.n
96REM set EPICS_CA_AUTO_ADDR_LIST=YES
97
98REM set EPICS_CA_CONN_TMO=30.0
99REM set EPICS_CA_BEACON_PERIOD=15.0
100REM set EPICS_CA_REPEATER_PORT=5065
101REM set EPICS_CA_SERVER_PORT=5064
102REM set EPICS_TS_MIN_WEST=420
103
104REM ======================================================
105REM --------------- JAVA ---------------------------------
106REM ======================================================
107REM Needed for java extensions
108REM set CLASSPATH=G:\epics\extensions\javalib
109REM set PATH=%PATH%;C:\j2sdk1.4.1_01\bin
110REM set CLASSPATH=%CLASSPATH%;C:\j2sdk1.4.1_01\lib\tools.jar
111
112REM ======================================================
113REM --------------- Exceed -------------------------------
114REM Needed for X11 extensions
115REM ======================================================
116REM set EX_VER=7.10
117REM set EX_VER=12.00
118REM set EX_VER=14.00
119REM set PATH=%PATH%;C:\Exceed%EX_VER%\XDK\
120REM set PATH=%PATH%;C:\Program Files\Hummingbird\Connectivity\%EX_VER%\Exceed\
121
122
diff --git a/startup/unix.csh b/startup/unix.csh
123new file mode 1006440new file mode 100644
index 0000000..788a639
--- /dev/null
+++ b/startup/unix.csh
@@ -0,0 +1,96 @@
1#*************************************************************************
2# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
3# National Laboratory.
4# Copyright (c) 2002 The Regents of the University of California, as
5# Operator of Los Alamos National Laboratory.
6# EPICS BASE Versions 3.13.7
7# and higher are distributed subject to a Software License Agreement found
8# in file LICENSE that is included with this distribution.
9#*************************************************************************
10#
11# Site-specific EPICS environment settings
12#
13# Attempts to set EPICS_HOST_ARCH. Optionally, adds the EPICS Base
14# install host architecture bin directory to PATH.
15#
16
17#-----------------------------------------------------------------------
18# Site serviceable parts (These definitions may be modified)
19#-----------------------------------------------------------------------
20
21# Automatically set up the environment when possible ("yes" or "no").
22# If set to yes, as much of the environment will be set up as possible.
23# If set to no, just the minimum environment will be set up. More
24# specific _auto_* definitions take precedence over this definition.
25set _auto=no
26
27# Automatically append to PATH ("yes" or "no"). If set to yes, the
28# EPICS Base install host architecture bin directory will be added to
29# PATH if possible. If set to no, the bin directory will not be added
30# to PATH.
31set _auto_path_append=$_auto
32
33# The program used to run Perl scripts (pathname).
34set _perl_prog=perl
35
36# The EPICS host architecture specification for EPICS_HOST_ARCH
37# (<os>-<arch>[-<toolset>] as defined in configure/CONFIG_SITE). If
38# nonempty, the value will be used as the value of EPICS_HOST_ARCH. If
39# empty, an attempt will be made to automatically determine the value
40# with EpicsHostArch.pl.
41set _epics_host_arch=
42
43# The install location of EPICS Base (pathname). If nonempty, the
44# EpicsHostArch.pl script from it, if it exists, will be used to
45# determine EPICS_HOST_ARCH. If nonempty and EPICS_HOST_ARCH was
46# determined successfully, it will be used to add the host architecture
47# bin directory to PATH if _auto_path_append is yes.
48set _epics_base=
49
50# The source location of EPICS Base (pathname). If nonempty, the
51# EpicsHostArch.pl script from it, if it exists and _epics_base is empty
52# or it did not exist in the _epics_base location, will be used to
53# determine EPICS_HOST_ARCH.
54set _epics_base_src=
55
56#-----------------------------------------------------------------------
57# Internal parts (There is typically no need to modify these)
58#-----------------------------------------------------------------------
59
60# Define the possible locations of EpicsHostArch.pl
61set _epics_host_arch_pl=
62set _src_epics_host_arch_pl=
63if ("$_epics_base" != '') then
64 set _epics_host_arch_pl="$_epics_base/lib/perl/EpicsHostArch.pl"
65endif
66if ("$_epics_base_src" != '') then
67 set _src_epics_host_arch_pl="$_epics_base_src/src/tools/EpicsHostArch.pl"
68endif
69
70# Set the EPICS host architecture specification
71if ("$_epics_host_arch" != '') then
72 setenv EPICS_HOST_ARCH "$_epics_host_arch"
73else if (-e "$_epics_host_arch_pl") then
74 set _epics_host_arch=`"$_perl_prog" "$_epics_host_arch_pl"`
75 setenv EPICS_HOST_ARCH "$_epics_host_arch"
76else if (-e "$_src_epics_host_arch_pl") then
77 set _epics_host_arch=`"$_perl_prog" "$_src_epics_host_arch_pl"`
78 setenv EPICS_HOST_ARCH "$_epics_host_arch"
79endif
80
81# Add the EPICS Base host architecture bin directory to PATH
82if ("$_auto_path_append" == yes) then
83 if ("$_epics_base" != '' && "$_epics_host_arch" != '') then
84 setenv PATH "${PATH}:$_epics_base/bin/$_epics_host_arch"
85 endif
86endif
87
88# Don't leak variables into the environment
89unset _auto
90unset _auto_path_append
91unset _perl_prog
92unset _epics_host_arch
93unset _epics_base
94unset _epics_base_src
95unset _epics_host_arch_pl
96unset _src_epics_host_arch_pl
diff --git a/startup/unix.sh b/startup/unix.sh
0new file mode 10064497new file mode 100644
index 0000000..a8d8328
--- /dev/null
+++ b/startup/unix.sh
@@ -0,0 +1,100 @@
1#*************************************************************************
2# Copyright (c) 2002 The University of Chicago, as Operator of Argonne
3# National Laboratory.
4# Copyright (c) 2002 The Regents of the University of California, as
5# Operator of Los Alamos National Laboratory.
6# EPICS BASE Versions 3.13.7
7# and higher are distributed subject to a Software License Agreement found
8# in file LICENSE that is included with this distribution.
9#*************************************************************************
10#
11# Site-specific EPICS environment settings
12#
13# Attempts to set EPICS_HOST_ARCH. Optionally, adds the EPICS Base
14# install host architecture bin directory to PATH.
15#
16
17#-----------------------------------------------------------------------
18# Site serviceable parts (These definitions may be modified)
19#-----------------------------------------------------------------------
20
21# Automatically set up the environment when possible ("yes" or "no").
22# If set to yes, as much of the environment will be set up as possible.
23# If set to no, just the minimum environment will be set up. More
24# specific _auto_* definitions take precedence over this definition.
25_auto=no
26
27# Automatically append to PATH ("yes" or "no"). If set to yes, the
28# EPICS Base install host architecture bin directory will be added to
29# PATH if possible. If set to no, the bin directory will not be added
30# to PATH.
31_auto_path_append=$_auto
32
33# The program used to run Perl scripts (pathname).
34_perl_prog=perl
35
36# The EPICS host architecture specification for EPICS_HOST_ARCH
37# (<os>-<arch>[-<toolset>] as defined in configure/CONFIG_SITE). If
38# nonempty, the value will be used as the value of EPICS_HOST_ARCH. If
39# empty, an attempt will be made to automatically determine the value
40# with EpicsHostArch.pl.
41_epics_host_arch=
42
43# The install location of EPICS Base (pathname). If nonempty, the
44# EpicsHostArch.pl script from it, if it exists, will be used to
45# determine EPICS_HOST_ARCH. If nonempty and EPICS_HOST_ARCH was
46# determined successfully, it will be used to add the host architecture
47# bin directory to PATH if _auto_path_append is yes.
48_epics_base=
49
50# The source location of EPICS Base (pathname). If nonempty, the
51# EpicsHostArch.pl script from it, if it exists and _epics_base is empty
52# or it did not exist in the _epics_base location, will be used to
53# determine EPICS_HOST_ARCH.
54_epics_base_src=
55
56#-----------------------------------------------------------------------
57# Internal parts (There is typically no need to modify these)
58#-----------------------------------------------------------------------
59
60# Define the possible locations of EpicsHostArch.pl
61_epics_host_arch_pl=
62_src_epics_host_arch_pl=
63if [ -n "$_epics_base" ]; then
64 _epics_host_arch_pl="$_epics_base/lib/perl/EpicsHostArch.pl"
65fi
66if [ -n "$_epics_base_src" ]; then
67 _src_epics_host_arch_pl="$_epics_base_src/src/tools/EpicsHostArch.pl"
68fi
69
70# Set the EPICS host architecture specification
71if [ -n "$_epics_host_arch" ]; then
72 EPICS_HOST_ARCH=$_epics_host_arch
73 export EPICS_HOST_ARCH
74elif [ -e "$_epics_host_arch_pl" ]; then
75 _epics_host_arch=$("$_perl_prog" "$_epics_host_arch_pl")
76 EPICS_HOST_ARCH=$_epics_host_arch
77 export EPICS_HOST_ARCH
78elif [ -e "$_src_epics_host_arch_pl" ]; then
79 _epics_host_arch=$("$_perl_prog" "$_src_epics_host_arch_pl")
80 EPICS_HOST_ARCH=$_epics_host_arch
81 export EPICS_HOST_ARCH
82fi
83
84# Add the EPICS Base host architecture bin directory to PATH
85if [ "$_auto_path_append" = yes ]; then
86 if [ -n "$_epics_base" ] && [ -n "$_epics_host_arch" ]; then
87 PATH="$PATH:$_epics_base/bin/$_epics_host_arch"
88 export PATH
89 fi
90fi
91
92# Don't leak variables into the environment
93unset _auto
94unset _auto_path_append
95unset _perl_prog
96unset _epics_host_arch
97unset _epics_base
98unset _epics_base_src
99unset _epics_host_arch_pl
100unset _src_epics_host_arch_pl
diff --git a/startup/win32.bat b/startup/win32.bat
index af9155d..6652fc9 100644
--- a/startup/win32.bat
+++ b/startup/win32.bat
@@ -1,147 +1,105 @@
1@ECHO OFF1@echo off
2REM *************************************************************************2rem *************************************************************************
3REM Copyright (c) 2002 The University of Chicago, as Operator of Argonne3rem Copyright (c) 2017 UChicago Argonne LLC, as Operator of Argonne
4REM National Laboratory.4rem National Laboratory.
5REM Copyright (c) 2002 The Regents of the University of California, as5rem Copyright (c) 2002 The Regents of the University of California, as
6REM Operator of Los Alamos National Laboratory.6rem Operator of Los Alamos National Laboratory.
7REM EPICS BASE Versions 3.13.77rem EPICS BASE is distributed subject to a Software License Agreement found
8REM and higher are distributed subject to a Software License Agreement found8rem in file LICENSE that is included with this distribution.
9REM in file LICENSE that is included with this distribution.9rem *************************************************************************
10REM *************************************************************************10rem
11REM11rem Site-specific EPICS environment settings
12REM Site-specific EPICS environment settings12rem
13REM 13rem Sets EPICS_HOST_ARCH and the environment for Microsoft Visual Studio.
14REM sites should modify these definitions14rem Optionally, resets PATH, adds Strawberry Perl to PATH, and adds the
1515rem EPICS Base install host architecture bin directory to PATH.
16REM ======================================================16rem
17REM ====== REQUIRED ENVIRONMENT VARIABLES FOLLOW ======17
18REM ======================================================18rem ----------------------------------------------------------------------
1919rem Site serviceable parts (These definitions may be modified)
20REM ======================================================20rem ----------------------------------------------------------------------
21REM ---------------- WINDOWS ---------------------------21
22REM ======================================================22rem The values of the definitions in this section must not contain
23REM ----- WIN95 -----23rem double-quotes.
24REM set PATH=C:\WINDOWS;C:\WINDOWS\COMMAND24rem
25REM ----- WINNT, WIN2000 -----25rem * Right: set _foo=C:\foo
26REM set PATH=C:\WINNT;C:\WINNT\SYSTEM3226rem * Right: set "_foo=C:\foo"
27REM ----- WINXP, Vista, Windows 7 -----27rem * Wrong: set _foo="C:\foo"
28set PATH=C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\SYSTEM32\Wbem28
2929rem Automatically set up the environment when possible ("yes" or "no").
30REM ======================================================30rem If set to yes, as much of the environment will be set up as possible.
31REM ---------------- make and perl ---------------------31rem If set to no, just the minimum environment will be set up. More
32REM ======================================================32rem specific _auto_* definitions take precedence over this definition.
3333set _auto=no
34REM --------------- ActiveState perl -------------------34
35set PATH=C:\Perl\bin;%PATH%35rem Automatically reset PATH ("yes" or "no"). If set to yes, PATH will
3636rem be reset to the value of _path_new. If set to no, PATH will not be
37REM --------------- mingw make ------------------------37rem reset.
38REM set PATH=C:\mingw-make\bin;%PATH%38set _auto_path_reset=%_auto%
39REM set PATH=C:\mingw-make82-3\bin;%PATH%39
4040rem Automatically append to PATH ("yes" or "no"). If set to yes, the
41REM --------------- gnuwin32 make ----------------------41rem EPICS Base install host architecture bin directory will be added to
42set PATH=C:\gnuwin32\bin;%PATH%42rem PATH if possible. If set to no, the bin directory will not be added
4343rem to PATH.
44REM ======================================================44set _auto_path_append=%_auto%
45REM ---------------- cygwin tools ------------------------45
46REM ======================================================46rem The new value for PATH. If _auto_path_reset is yes, PATH will be set
47REM (make & perl if above perl and make are REMs)47rem to it.
48REM Dont use cygwin GNU make and Perl! 48set _path_new=C:\Windows\System32;C:\Windows;C:\Windows\System32\wbem
49REM cygwin contains tk/tcl, vim, perl, and many unix tools49
50REM need grep from here NOT from cvs directory50rem The location of Strawberry Perl (pathname). If empty, Strawberry Perl
51REM set PATH=%PATH%;.;..51rem is assumed to already be in PATH and will not be added. If nonempty,
52REM set PATH=%PATH%;c:\cygwin\bin52rem Strawberry Perl will be added to PATH.
5353set _strawberry_perl_home=C:\Strawberry
54REM ======================================================54
55REM --------------- Visual c++ -------------------------55rem The location of Microsoft Visual Studio (pathname).
56REM ======================================================56set _visual_studio_home=C:\Program Files (x86)\Microsoft Visual Studio 14.0
5757
58REM ------ Microsoft Visual Studio 2005 ------58rem The EPICS host architecture specification for EPICS_HOST_ARCH
59REM call "C:\Program files\Microsoft Visual Studio 8\VC\vcvarsall.bat" x86_amd6459rem (<os>-<arch>[-<toolset>] as defined in configure/CONFIG_SITE).
60REM set PATH=%PATH%;C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin60set _epics_host_arch=win32-x86
61REM set INCLUDE=%INCLUDE%;C:\Program Files\Microsoft SDKs\Windows\v6.0A\include61
62REM REM set LIBPATH=%LIBPATH%;C:\Program Files\Microsoft SDKs\Windows\v6.0A\lib62rem The install location of EPICS Base (pathname). If nonempty and
63REM set LIB=%LIB%;C:\Program Files\Microsoft SDKs\Windows\v6.0A\lib63rem _auto_path_append is yes, it will be used to add the host architecture
6464rem bin directory to PATH.
65REM ------ Microsoft Visual Studio 2008 ------65set _epics_base=
66REM call "C:\Program files\Microsoft Visual Studio 9.0\VC\bin\vcvars32.bat"66
67REM call "C:\Program files\Microsoft Visual Studio 9.0\VC\vcvarsall.bat" x86_amd6467rem ----------------------------------------------------------------------
68REM set PATH=C:\Program Files\Microsoft SDKs\Windows\v7.0\bin;%PATH%68rem Internal parts (There is typically no need to modify these)
69REM set INCLUDE=C:\Program Files\Microsoft SDKs\Windows\v7.0\include;%INCLUDE%69rem ----------------------------------------------------------------------
70REM set LIBPATH=C:\Program Files\Microsoft SDKs\Windows\v7.0\lib;%LIBPATH%70
71REM set LIB=C:\Program Files\Microsoft SDKs\Windows\v7.0\lib;%LIB%71rem Reset PATH
7272if "%_auto_path_reset%" == "yes" (
73REM ----- Visual Studion 2010 -----73 set "PATH=%_path_new%"
74REM -- windows-x64 ---74)
75REM call "C:\Program files\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" x6475
76REM -- win32-x86 ---76rem Add Strawberry Perl to PATH
77call "C:\Program files\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" x8677if "%_strawberry_perl_home%" == "" goto after_add_strawberry_perl
7878rem Can't do this inside parentheses because PATH would be read only once
79REM ======================================================79set "PATH=%PATH%;%_strawberry_perl_home%\c\bin"
80REM --------------- EPICS --------------------------------80set "PATH=%PATH%;%_strawberry_perl_home%\perl\site\bin"
81REM ======================================================81set "PATH=%PATH%;%_strawberry_perl_home%\perl\bin"
82REM set EPICS_HOST_ARCH=windows-x6482:after_add_strawberry_perl
83set EPICS_HOST_ARCH=win32-x8683
84set PATH=%PATH%;G:\epics\base\bin\%EPICS_HOST_ARCH%84rem Set the environment for Microsoft Visual Studio
85set PATH=%PATH%;G:\epics\extensions\bin\%EPICS_HOST_ARCH%85call "%_visual_studio_home%\VC\vcvarsall.bat" x86
8686
87REM ======================================================87rem Set the EPICS host architecture specification
88REM ------- OPTIONAL ENVIRONMENT VARIABLES FOLLOW --------88set "EPICS_HOST_ARCH=%_epics_host_arch%"
89REM ======================================================89
9090rem Add the EPICS Base host architecture bin directory to PATH
91REM ======================================================91if "%_auto_path_append%" == "yes" (
92REM ----------------- remote CVS -------------------------92 if not "%_epics_base%" == "" (
93REM ======================================================93 set "PATH=%PATH%;%_epics_base%\bin\%_epics_host_arch%"
94REM set CVS_RSH=c:/cygwin/bin/ssh.exe94 )
95REM set CVSROOT=:ext:jba@aps.anl.gov:/usr/local/epicsmgr/cvsroot95)
96REM set HOME=c:/users/%USERNAME%96
97REM set HOME=c:/users/jba97rem Don't leak variables into the environment
9898set _auto=
99REM ======================================================99set _auto_path_reset=
100REM ------------------- Bazaar ---------------------------100set _auto_path_append=
101REM ======================================================101set _path_new=
102set PATH=%PATH%;C:\Program files\Bazaar102set _strawberry_perl_home=
103103set _visual_studio_home=
104REM ======================================================104set _epics_host_arch=
105REM ----------------- GNU make flags ---------------------105set _epics_base=
106REM ======================================================
107set MAKEFLAGS=-w
108
109REM ======================================================
110REM -------------- vim (use cygwin vim ) -----------------
111REM ======================================================
112REM HOME needed by vim to write .viminfo file.
113REM VIM needed by vim to find _vimrc file.
114REM set VIM=c:\cygwin
115
116REM ======================================================
117REM --------------- Epics Channel Access -----------------
118REM Modify and uncomment the following lines
119REM to override the base/configure/CONFIG_ENV defaults
120REM ======================================================
121REM set EPICS_CA_ADDR_LIST=n.n.n.n n.n.n.n
122REM set EPICS_CA_AUTO_ADDR_LIST=YES
123
124REM set EPICS_CA_CONN_TMO=30.0
125REM set EPICS_CA_BEACON_PERIOD=15.0
126REM set EPICS_CA_REPEATER_PORT=5065
127REM set EPICS_CA_SERVER_PORT=5064
128REM set EPICS_TS_MIN_WEST=420
129
130REM ======================================================
131REM --------------- JAVA ---------------------------------
132REM ======================================================
133REM Needed for java extensions
134REM set CLASSPATH=G:\epics\extensions\javalib
135REM set PATH=%PATH%;C:\j2sdk1.4.1_01\bin
136REM set CLASSPATH=%CLASSPATH%;C:\j2sdk1.4.1_01\lib\tools.jar
137
138REM ======================================================
139REM --------------- Exceed -------------------------------
140REM Needed for X11 extensions
141REM ======================================================
142REM set EX_VER=7.10
143REM set EX_VER=12.00
144REM set EX_VER=14.00
145REM set PATH=%PATH%;C:\Exceed%EX_VER%\XDK\
146REM set PATH=%PATH%;C:\Program Files\Hummingbird\Connectivity\%EX_VER%\Exceed\
147
diff --git a/startup/windows.bat b/startup/windows.bat
148new file mode 100644106new file mode 100644
index 0000000..877c0d5
--- /dev/null
+++ b/startup/windows.bat
@@ -0,0 +1,105 @@
1@echo off
2rem *************************************************************************
3rem Copyright (c) 2017 UChicago Argonne LLC, as Operator of Argonne
4rem National Laboratory.
5rem Copyright (c) 2002 The Regents of the University of California, as
6rem Operator of Los Alamos National Laboratory.
7rem EPICS BASE is distributed subject to a Software License Agreement found
8rem in file LICENSE that is included with this distribution.
9rem *************************************************************************
10rem
11rem Site-specific EPICS environment settings
12rem
13rem Sets EPICS_HOST_ARCH and the environment for Microsoft Visual Studio.
14rem Optionally, resets PATH, adds Strawberry Perl to PATH, and adds the
15rem EPICS Base install host architecture bin directory to PATH.
16rem
17
18rem ----------------------------------------------------------------------
19rem Site serviceable parts (These definitions may be modified)
20rem ----------------------------------------------------------------------
21
22rem The values of the definitions in this section must not contain
23rem double-quotes.
24rem
25rem * Right: set _foo=C:\foo
26rem * Right: set "_foo=C:\foo"
27rem * Wrong: set _foo="C:\foo"
28
29rem Automatically set up the environment when possible ("yes" or "no").
30rem If set to yes, as much of the environment will be set up as possible.
31rem If set to no, just the minimum environment will be set up. More
32rem specific _auto_* definitions take precedence over this definition.
33set _auto=no
34
35rem Automatically reset PATH ("yes" or "no"). If set to yes, PATH will
36rem be reset to the value of _path_new. If set to no, PATH will not be
37rem reset.
38set _auto_path_reset=%_auto%
39
40rem Automatically append to PATH ("yes" or "no"). If set to yes, the
41rem EPICS Base install host architecture bin directory will be added to
42rem PATH if possible. If set to no, the bin directory will not be added
43rem to PATH.
44set _auto_path_append=%_auto%
45
46rem The new value for PATH. If _auto_path_reset is yes, PATH will be set
47rem to it.
48set _path_new=C:\Windows\System32;C:\Windows;C:\Windows\System32\wbem
49
50rem The location of Strawberry Perl (pathname). If empty, Strawberry Perl
51rem is assumed to already be in PATH and will not be added. If nonempty,
52rem Strawberry Perl will be added to PATH.
53set _strawberry_perl_home=C:\Strawberry
54
55rem The location of Microsoft Visual Studio (pathname).
56set _visual_studio_home=C:\Program Files (x86)\Microsoft Visual Studio 14.0
57
58rem The EPICS host architecture specification for EPICS_HOST_ARCH
59rem (<os>-<arch>[-<toolset>] as defined in configure/CONFIG_SITE).
60set _epics_host_arch=windows-x64
61
62rem The install location of EPICS Base (pathname). If nonempty and
63rem _auto_path_append is yes, it will be used to add the host architecture
64rem bin directory to PATH.
65set _epics_base=
66
67rem ----------------------------------------------------------------------
68rem Internal parts (There is typically no need to modify these)
69rem ----------------------------------------------------------------------
70
71rem Reset PATH
72if "%_auto_path_reset%" == "yes" (
73 set "PATH=%_path_new%"
74)
75
76rem Add Strawberry Perl to PATH
77if "%_strawberry_perl_home%" == "" goto after_add_strawberry_perl
78rem Can't do this inside parentheses because PATH would be read only once
79set "PATH=%PATH%;%_strawberry_perl_home%\c\bin"
80set "PATH=%PATH%;%_strawberry_perl_home%\perl\site\bin"
81set "PATH=%PATH%;%_strawberry_perl_home%\perl\bin"
82:after_add_strawberry_perl
83
84rem Set the environment for Microsoft Visual Studio
85call "%_visual_studio_home%\VC\vcvarsall.bat" x64
86
87rem Set the EPICS host architecture specification
88set "EPICS_HOST_ARCH=%_epics_host_arch%"
89
90rem Add the EPICS Base host architecture bin directory to PATH
91if "%_auto_path_append%" == "yes" (
92 if not "%_epics_base%" == "" (
93 set "PATH=%PATH%;%_epics_base%\bin\%_epics_host_arch%"
94 )
95)
96
97rem Don't leak variables into the environment
98set _auto=
99set _auto_path_reset=
100set _auto_path_append=
101set _path_new=
102set _strawberry_perl_home=
103set _visual_studio_home=
104set _epics_host_arch=
105set _epics_base=

Subscribers

People subscribed via source and target branches