Added a simpler startup/EpicsHostArch for backwards-compatibility

Many downstream modules seem to be using the EpicsHostArch script in
their CI build scripts and would break if we remove that. I created
a new version that finds and execs the Perl script directly.

Also reworded and expanded the Release Notes about the EpicsHostArch
scripts.
This commit is contained in:
Andrew Johnson
2018-08-10 15:20:29 -05:00
parent 2548a37267
commit 9051cdbb34
2 changed files with 41 additions and 8 deletions

View File

@ -20,15 +20,27 @@ and have grown crufty (technical term). This release includes the following
updates to these files:</p>
<ul>
<li>The <tt>EpicsHostArch</tt> script has been removed.
<tt>EpicsHostArch.pl</tt> should be used instead.</li>
<li>The <tt>EpicsHostArch.pl</tt> script has been moved into <tt>src/tools</tt>
from where it gets installed into <tt>lib/perl</tt>. The build system has been
adjusted to look for it in both places if the <tt>EPICS_HOST_ARCH</tt>
environment variable has not been set at build-time. Sites that may have used
this to set <tt>EPICS_HOST_ARCH</tt> as part of their standard environment may
need to adjust their scripts when they upgrade to this release.</li>
<li>The Perl <tt>EpicsHostArch.pl</tt> script has been rewritten, and support
for a few previously missing host architectures has been added to it.</li>
<li>The <tt>EpicsHostArch.pl</tt> script has also been moved into the standard
<tt>src/tools</tt> directory, from where it will be installed into
<tt>lib/perl</tt>. In this new location it is no longer executable, so it must
be run by the <tt>perl</tt> executable.</li>
<li>The build system has been adjusted to look for <tt>EpicsHostArch.pl</tt> in
both places if the <tt>EPICS_HOST_ARCH</tt> environment variable has not been
set at build-time.</li>
<li>Sites that used the original Perl script to set <tt>EPICS_HOST_ARCH</tt> as
part of their standard environment will need to adjust their scripts when they
upgrade to this release.</li>
<li>The <tt>EpicsHostArch</tt> shell script has been replaced with a wrapper
routine that calls the Perl <tt>EpicsHostArch.pl</tt> script. Sites that rely on
this script to set <tt>EPICS_HOST_ARCH</tt> should consider switching to the
Perl script instead.</li>
<li>The <tt>Site.cshrc</tt> and <tt>Site.profile</tt> files have been renamed to
<tt>unix.csh</tt> and <tt>unix.sh</tt>, respectively.</li>

21
startup/EpicsHostArch Normal file
View File

@ -0,0 +1,21 @@
#!/bin/sh
# Script to find and run the Perl EpicsHostArch.pl script.
# This script is provided for backwards-compatibility only and may be
# dropped from future releases of Base. Please adjust callers to run
# the Perl version directly as this startup directory isn't copied to
# INSTALL_LOCATION by the EPICS build system.
EHA=EpicsHostArch.pl
cd "$(dirname "$0")/.."
# Perl script will be installed into lib/perl
[[ -f lib/perl/$EHA ]] && exec perl lib/perl/$EHA $*
# If Base hasn't been built yet, use the source Luke
[[ -f src/tools/$EHA ]] && exec perl src/tools/$EHA $*
# Die with an error message
echo "$0: Can't find $EHA" >&2
exit 1