Merge ~epics-core/epics-base/+git/Com:make-simple into ~epics-core/epics-base/+git/epics-base:7.0
- Git
- lp:~epics-core/epics-base/+git/Com
- make-simple
- Merge into 7.0
Status: | Merged |
---|---|
Merged at revision: | 966965c2c1df55293f43978100af19a24c8e5e8e |
Proposed branch: | ~epics-core/epics-base/+git/Com:make-simple |
Merge into: | ~epics-core/epics-base/+git/epics-base:7.0 |
Diff against target: |
1899 lines (+86/-101) 45 files modified
configure/CONFIG (+5/-1) configure/CONFIG_LIBCOM_MODULE (+3/-11) configure/Makefile (+9/-0) configure/RULES_BUILD (+3/-3) dev/null (+0/-2) modules/Makefile (+4/-4) modules/ca/Makefile (+2/-4) modules/ca/src/Makefile (+1/-1) modules/ca/src/client/Makefile (+3/-3) modules/ca/src/perl/Makefile (+1/-3) modules/ca/src/perl/capr.pl (+1/-3) modules/ca/src/template/Makefile (+1/-1) modules/ca/src/tools/Makefile (+1/-1) modules/database/Makefile (+2/-3) modules/database/src/Makefile (+1/-1) modules/database/src/ioc/Makefile (+5/-3) modules/database/src/std/Makefile (+5/-3) modules/database/src/template/Makefile (+1/-1) modules/database/src/tools/Makefile (+1/-3) modules/database/src/tools/dbExpand.pl (+1/-3) modules/database/src/tools/dbdExpand.pl (+1/-3) modules/database/src/tools/dbdReport.pl (+1/-3) modules/database/src/tools/dbdToHtml.pl (+1/-3) modules/database/src/tools/dbdToMenuH.pl (+1/-3) modules/database/src/tools/dbdToRecordtypeH.pl (+1/-3) modules/database/src/tools/registerRecordDeviceDriver.pl (+1/-3) modules/database/test/Makefile (+1/-1) modules/database/test/ioc/db/Makefile (+4/-3) modules/database/test/ioc/dbtemplate/Makefile (+1/-1) modules/database/test/std/filters/Makefile (+3/-1) modules/database/test/std/link/Makefile (+3/-1) modules/database/test/std/rec/Makefile (+3/-1) modules/database/test/tools/Makefile (+1/-1) modules/libcom/Makefile (+3/-4) modules/libcom/RTEMS/Makefile (+1/-1) modules/libcom/src/Makefile (+2/-4) modules/libcom/src/env/Makefile (+0/-1) modules/libcom/src/env/RULES (+1/-1) modules/libcom/src/env/bldEnvData.pl (+1/-3) modules/libcom/test/Makefile (+1/-1) modules/libcom/vxWorks/Makefile (+1/-1) src/template/base/makeBaseApp.pl (+1/-1) src/tools/convertRelease.pl (+1/-1) src/tools/expandVars.pl (+1/-1) src/tools/fullPathName.pl (+1/-1) |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Andrew Johnson | Approve | ||
mdavidsaver | Approve | ||
Review via email: mp+361381@code.launchpad.net |
Commit message
Description of the change
Makefile simplifications related to the former sub-modules (libcom, ca, database) which have causing confusion, and extra complexity in packaging.
1. Remove modules/*/configure and CI leftovers. As these are no longer built separately, this is unnecessary complexity (need to set EPICS_HOST_ARCH to build in sub-dirs).
2. Remove bin/*/*
Andrew Johnson (anj) wrote : | # |
mdavidsaver (mdavidsaver) wrote : | # |
> ... You probably didn't see these Perl errors ...
You're right, I don't. Which is puzzling considering that I've been (re)building with this change for several months now. You see this during Base build?
Andrew Johnson (anj) wrote : | # |
Yup, those errors were from the top of your branch. I just replicated them:
tux% git clone -b make-simple --reference base-7.0 git+ssh:
Cloning into 'dev-7.0'...
Checking connectivity... done.
Checking out files: 100% (1733/1733), done.
tux% cd dev-7.0/
tux% make -s -C configure
Can't locate EPICS/Path.pm in @INC (@INC contains: /local/
BEGIN failed--compilation aborted at ../src/
Can't locate EPICS/Path.pm in @INC (@INC contains: /local/
BEGIN failed--compilation aborted at ../../src/
...
They don't prevent Base from building though.
mdavidsaver (mdavidsaver) wrote : | # |
This shows up in the travis build anyway.
https:/
> They don't prevent Base from building though.
... because it comes from the configure/RELEASE parsing mechanics. Specifically:
> RELEASE_TOPS := $(shell $(CONVERTRELEASE) -T $(TOP) releaseTops)
This will be empty when building Base itself, so we can just skip it.
Andrew Johnson (anj) wrote : | # |
The Makefile rule for %ModuleDirs.pm cannot be removed, it will still be needed for external Perl scripts that use Perl modules from Base. The caPerl makeBaseApp template demonstrates the need.
You didn't make the changes I suggested in the last paragraph of my first comment yet: Remove the now unnecessary 'no lib $Bin;' lines from the scripts modules/
I still object that the libcom, ca and database directories appear under modules/ when after these changes they aren't structured as modules any more. If we're going to undo their modular nature like this they should be moved back under src/ and test/.
One point of our making them modules was to move towards allowing CA and RSRV to become optional and unbundling them — are you abandoning that idea?
Andrew Johnson (anj) wrote : | # |
Core Group mtg: Further exploration on Perl ModuleDirs files by ANJ; diff comments with fixes, but in principle this is acceptable.
mdavidsaver (mdavidsaver) wrote : | # |
I've addressed two of three comments. I'm not going to try to make the caPerlApp example automatically set $PERL5LIB (I would rather drop it).
mdavidsaver (mdavidsaver) wrote : | # |
wrt. the *ModuleDirs.pm idea. One alternative I can imagine is injecting these paths directly into the .pl before/during installation?
Though even this would raise an issue which would need to be addressed in the rpath-origin MR.
https:/
Isn't there some way we can avoid encoding more absolute paths in the installed tree? I'm close to getting rid of these!
Andrew Johnson (anj) wrote : | # |
With the changes already included in this MR Base doesn't generate any *ModuleDirs.pm files at all, they will only be generated by support modules that explicitly ask for one. I don't understand why you appear to be so strongly opposed to Base keeping the capability of generating them for other configurations (which is all I was asking for in my first paragraph back on 2019-03-07).
I understand the need for Debian packaging to remove install absolute paths from Base's installed files. When packaging EPICS it should be possible to install all the .pm files from $(INSTALL_
The packaging process can also remove the similar code that adjusts @INC from the top of the caPerlApp/*.pl template files, and delete the _APPNAME_
mdavidsaver (mdavidsaver) wrote : | # |
I think we're confusing each other. So the only change you're asking for is to revert the changes to .pl files under "modules/
Andrew Johnson (anj) wrote : | # |
I don't think so since they still have the 'use _APPNAME_
I was also explaining how the Debian packaging could more closely integrate our Perl modules into the rest of the Debian system.
mdavidsaver (mdavidsaver) wrote : | # |
> you won't try to remove the *ModuleDirs.pm generation rules
I'm not! From me, "could be removed" is an option not a plan. I would however, like to remove any usage of it in Base. I appreciate that you may not see much distance between these two points, but I do. I'm relenting on the caPerlApp template in the hope of moving things forward.
I will reiterate for emphasis that my objections include having things which aren't executables under bin/ as well as encoding __absolute__ paths in the installed tree. The former coming in part from my desire, in the long term, to see our installed tree more closely follow *NIX conventions (LSB etc.). The later from my desire in the near term to be able to copy and use the installed tree from a different path.
mdavidsaver (mdavidsaver) : | # |
Andrew Johnson (anj) wrote : | # |
Still looking at this, ideas pending.
Andrew Johnson (anj) wrote : | # |
Videocon 9/17: Approved, some merge conflicts expected.
Preview Diff
1 | diff --git a/configure/CONFIG b/configure/CONFIG |
2 | index e40d3f5..153e69e 100644 |
3 | --- a/configure/CONFIG |
4 | +++ b/configure/CONFIG |
5 | @@ -58,8 +58,12 @@ include $(CONFIG)/CONFIG_BASE_VERSION |
6 | include $(CONFIG)/os/CONFIG.$(EPICS_HOST_ARCH).Common |
7 | -include $(CONFIG)/os/CONFIG_SITE.$(EPICS_HOST_ARCH).Common |
8 | |
9 | +# Parse configure/RELEASE |
10 | +# except when building Base itself, where this file is empty, |
11 | +# and would error in src/tools/ anyway. |
12 | +ifndef BASE_TOP |
13 | RELEASE_TOPS := $(shell $(CONVERTRELEASE) -T $(TOP) releaseTops) |
14 | - |
15 | +endif |
16 | |
17 | ifdef T_A |
18 | |
19 | diff --git a/modules/ca/configure/CONFIG_CA_MODULE b/configure/CONFIG_CA_MODULE |
20 | similarity index 100% |
21 | rename from modules/ca/configure/CONFIG_CA_MODULE |
22 | rename to configure/CONFIG_CA_MODULE |
23 | diff --git a/modules/ca/configure/CONFIG_CA_VERSION b/configure/CONFIG_CA_VERSION |
24 | similarity index 100% |
25 | rename from modules/ca/configure/CONFIG_CA_VERSION |
26 | rename to configure/CONFIG_CA_VERSION |
27 | diff --git a/modules/database/configure/CONFIG_DATABASE_MODULE b/configure/CONFIG_DATABASE_MODULE |
28 | similarity index 100% |
29 | rename from modules/database/configure/CONFIG_DATABASE_MODULE |
30 | rename to configure/CONFIG_DATABASE_MODULE |
31 | diff --git a/modules/database/configure/CONFIG_DATABASE_VERSION b/configure/CONFIG_DATABASE_VERSION |
32 | similarity index 100% |
33 | rename from modules/database/configure/CONFIG_DATABASE_VERSION |
34 | rename to configure/CONFIG_DATABASE_VERSION |
35 | diff --git a/modules/libcom/configure/CONFIG_LIBCOM_MODULE b/configure/CONFIG_LIBCOM_MODULE |
36 | similarity index 64% |
37 | rename from modules/libcom/configure/CONFIG_LIBCOM_MODULE |
38 | rename to configure/CONFIG_LIBCOM_MODULE |
39 | index 175606c..32bb937 100644 |
40 | --- a/modules/libcom/configure/CONFIG_LIBCOM_MODULE |
41 | +++ b/configure/CONFIG_LIBCOM_MODULE |
42 | @@ -5,18 +5,10 @@ |
43 | # in file LICENSE that is included with this distribution. |
44 | #************************************************************************* |
45 | |
46 | -# Set EPICS_LIBCOM if necessary |
47 | -ifndef EPICS_LIBCOM |
48 | - EPICS_LIBCOM = $(if $(BUILDING_LIBCOM),$(INSTALL_LOCATION),$(EPICS_BASE)) |
49 | - |
50 | - # Paths to tools built here |
51 | - EPICS_LIBCOM_HOST_BIN ?= $(EPICS_LIBCOM)/bin/$(EPICS_HOST_ARCH) |
52 | -endif |
53 | - |
54 | # Set location of locally generated tools |
55 | -YACC = $(abspath $(EPICS_LIBCOM_HOST_BIN))/antelope$(HOSTEXE) |
56 | -LEX = $(abspath $(EPICS_LIBCOM_HOST_BIN))/e_flex$(HOSTEXE) \ |
57 | - -S$(EPICS_LIBCOM)/include/flex.skel.static |
58 | +YACC = $(abspath $(EPICS_BASE)/bin/$(EPICS_HOST_ARCH))/antelope$(HOSTEXE) |
59 | +LEX = $(abspath $(EPICS_BASE)/bin/$(EPICS_HOST_ARCH))/e_flex$(HOSTEXE) \ |
60 | + -S$(EPICS_BASE)/include/flex.skel.static |
61 | |
62 | # Default stack size for osiThread |
63 | OSITHREAD_USE_DEFAULT_STACK = NO |
64 | diff --git a/modules/libcom/configure/CONFIG_LIBCOM_VERSION b/configure/CONFIG_LIBCOM_VERSION |
65 | similarity index 100% |
66 | rename from modules/libcom/configure/CONFIG_LIBCOM_VERSION |
67 | rename to configure/CONFIG_LIBCOM_VERSION |
68 | diff --git a/configure/Makefile b/configure/Makefile |
69 | index 3778797..f48278d 100644 |
70 | --- a/configure/Makefile |
71 | +++ b/configure/Makefile |
72 | @@ -20,5 +20,14 @@ CONFIGS += $(subst ../,,$(wildcard ../os/CONFIG*)) |
73 | CONFIGS += $(subst ../,,$(wildcard ../RELEASE*)) |
74 | CONFIGS += $(subst ../,,$(wildcard ../RULES*)) |
75 | |
76 | +CFG += CONFIG_LIBCOM_MODULE |
77 | +CFG += CONFIG_LIBCOM_VERSION |
78 | + |
79 | +CFG += CONFIG_CA_MODULE |
80 | +CFG += CONFIG_CA_VERSION |
81 | + |
82 | +CFG += CONFIG_DATABASE_MODULE |
83 | +CFG += CONFIG_DATABASE_VERSION |
84 | + |
85 | include $(TOP)/configure/RULES |
86 | |
87 | diff --git a/configure/RULES_BUILD b/configure/RULES_BUILD |
88 | index 2a78a96..6267889 100644 |
89 | --- a/configure/RULES_BUILD |
90 | +++ b/configure/RULES_BUILD |
91 | @@ -190,7 +190,7 @@ endif |
92 | checkRelease: |
93 | +$(CONVERTRELEASE) checkRelease |
94 | warnRelease: |
95 | - -$(CONVERTRELEASE) checkRelease |
96 | + $(CONVERTRELEASE) checkRelease |
97 | noCheckRelease: |
98 | ifeq ($(EPICS_HOST_ARCH),$(T_A)) |
99 | $(info Warning: RELEASE file consistency checks have been disabled) |
100 | @@ -350,7 +350,7 @@ $(MODNAME): %$(MODEXT): %$(EXE) |
101 | |
102 | runtests: $(TESTSCRIPTS) |
103 | ifdef RUNTESTS_ENABLED |
104 | - -$(PERL) -MTest::Harness -e 'runtests @ARGV if @ARGV;' $^ |
105 | + $(PERL) -MTest::Harness -e 'runtests @ARGV if @ARGV;' $^ |
106 | endif |
107 | |
108 | testspec: $(TESTSCRIPTS) |
109 | @@ -385,7 +385,7 @@ junitfiles: $(JUNITFILES) |
110 | # A .tap file is the output from running the associated test script |
111 | %.tap: %.t |
112 | ifdef RUNTESTS_ENABLED |
113 | - -$(PERL) $< -tap > $@ |
114 | + $(PERL) $< -tap > $@ |
115 | endif |
116 | |
117 | %.xml: %.tap |
118 | diff --git a/modules/Makefile b/modules/Makefile |
119 | index 0ed2b0e..ae221de 100644 |
120 | --- a/modules/Makefile |
121 | +++ b/modules/Makefile |
122 | @@ -7,15 +7,15 @@ TOP = .. |
123 | include $(TOP)/configure/CONFIG |
124 | include CONFIG_SITE.local |
125 | |
126 | -# Submodules for bundle build |
127 | -SUBMODULES += libcom |
128 | +DIRS += libcom |
129 | |
130 | -SUBMODULES += ca |
131 | +DIRS += ca |
132 | ca_DEPEND_DIRS = libcom |
133 | |
134 | -SUBMODULES += database |
135 | +DIRS += database |
136 | database_DEPEND_DIRS = ca |
137 | |
138 | +# Submodules for bundle build |
139 | SUBMODULES += pvData |
140 | pvData_DEPEND_DIRS = libcom |
141 | |
142 | diff --git a/modules/ca/.ci/travis-build.sh b/modules/ca/.ci/travis-build.sh |
143 | deleted file mode 100755 |
144 | index 622979b..0000000 |
145 | --- a/modules/ca/.ci/travis-build.sh |
146 | +++ /dev/null |
147 | @@ -1,21 +0,0 @@ |
148 | -#!/bin/sh |
149 | -set -e -x |
150 | - |
151 | -# set RTEMS to eg. "4.9" or "4.10" |
152 | -# requires qemu, bison, flex, texinfo, install-info |
153 | -if [ -n "$RTEMS" ] |
154 | -then |
155 | - # find local qemu-system-i386 |
156 | - export PATH="$HOME/.cache/qemu/usr/bin:$PATH" |
157 | - echo -n "Using QEMU: " |
158 | - type qemu-system-i386 || echo "Missing qemu" |
159 | - EXTRA=RTEMS_QEMU_FIXUPS=YES |
160 | -fi |
161 | - |
162 | -make -j2 $EXTRA |
163 | - |
164 | -if [ "$TEST" != "NO" ] |
165 | -then |
166 | - make -j2 tapfiles |
167 | - make -s test-results |
168 | -fi |
169 | diff --git a/modules/ca/.ci/travis-prepare.sh b/modules/ca/.ci/travis-prepare.sh |
170 | deleted file mode 100755 |
171 | index 85dc8d7..0000000 |
172 | --- a/modules/ca/.ci/travis-prepare.sh |
173 | +++ /dev/null |
174 | @@ -1,132 +0,0 @@ |
175 | -#!/bin/sh |
176 | -set -e -x |
177 | - |
178 | -CURDIR="$PWD" |
179 | - |
180 | -QDIR="$HOME/.cache/qemu" |
181 | - |
182 | -if [ -n "$RTEMS" -a "$TEST" = "YES" ] |
183 | -then |
184 | - git clone --quiet --branch vme --depth 10 https://github.com/mdavidsaver/qemu.git "$HOME/.build/qemu" |
185 | - cd "$HOME/.build/qemu" |
186 | - |
187 | - HEAD=`git log -n1 --pretty=format:%H` |
188 | - echo "HEAD revision $HEAD" |
189 | - |
190 | - [ -e "$HOME/.cache/qemu/built" ] && BUILT=`cat "$HOME/.cache/qemu/built"` |
191 | - echo "Cached revision $BUILT" |
192 | - |
193 | - if [ "$HEAD" != "$BUILT" ] |
194 | - then |
195 | - echo "Building QEMU" |
196 | - git submodule --quiet update --init |
197 | - |
198 | - install -d "$HOME/.build/qemu/build" |
199 | - cd "$HOME/.build/qemu/build" |
200 | - |
201 | - "$HOME/.build/qemu/configure" --prefix="$HOME/.cache/qemu/usr" --target-list=i386-softmmu --disable-werror |
202 | - make -j2 |
203 | - make install |
204 | - |
205 | - echo "$HEAD" > "$HOME/.cache/qemu/built" |
206 | - fi |
207 | -fi |
208 | - |
209 | -cd "$CURDIR" |
210 | - |
211 | -cat << EOF > configure/RELEASE.local |
212 | -EPICS_BASE=$HOME/.source/epics-base |
213 | -EOF |
214 | - |
215 | -install -d "$HOME/.source" |
216 | -cd "$HOME/.source" |
217 | - |
218 | -add_base_module() { |
219 | - MODULE=$1 |
220 | - BRANCH=$2 |
221 | - ( cd epics-base/modules && \ |
222 | - git clone --quiet --depth 5 --branch "$MODULE"/"$BRANCH" https://github.com/${REPOBASE:-epics-base}/epics-base.git "$MODULE" && \ |
223 | - cd "$MODULE" && git log -n1 ) |
224 | -} |
225 | - |
226 | -git clone --quiet --depth 5 --branch core/"${BRCORE:-master}" https://github.com/${REPOBASE:-epics-base}/epics-base.git epics-base |
227 | -( cd epics-base && git log -n1 ) |
228 | -add_base_module libcom "${BRLIBCOM:-master}" |
229 | - |
230 | -EPICS_HOST_ARCH=`sh epics-base/startup/EpicsHostArch` |
231 | - |
232 | -# requires wine and g++-mingw-w64-i686 |
233 | -if [ "$WINE" = "32" ] |
234 | -then |
235 | - echo "Cross mingw32" |
236 | - sed -i -e '/CMPLR_PREFIX/d' epics-base/configure/os/CONFIG_SITE.linux-x86.win32-x86-mingw |
237 | - cat << EOF >> epics-base/configure/os/CONFIG_SITE.linux-x86.win32-x86-mingw |
238 | -CMPLR_PREFIX=i686-w64-mingw32- |
239 | -EOF |
240 | - cat << EOF >> epics-base/configure/CONFIG_SITE |
241 | -CROSS_COMPILER_TARGET_ARCHS+=win32-x86-mingw |
242 | -EOF |
243 | -fi |
244 | - |
245 | -if [ "$STATIC" = "YES" ] |
246 | -then |
247 | - echo "Build static libraries/executables" |
248 | - cat << EOF >> epics-base/configure/CONFIG_SITE |
249 | -SHARED_LIBRARIES=NO |
250 | -STATIC_BUILD=YES |
251 | -EOF |
252 | -fi |
253 | - |
254 | -case "$CMPLR" in |
255 | -clang) |
256 | - echo "Host compiler is clang" |
257 | - cat << EOF >> epics-base/configure/os/CONFIG_SITE.Common.$EPICS_HOST_ARCH |
258 | -GNU = NO |
259 | -CMPLR_CLASS = clang |
260 | -CC = clang |
261 | -CCC = clang++ |
262 | -EOF |
263 | - |
264 | - # hack |
265 | - sed -i -e 's/CMPLR_CLASS = gcc/CMPLR_CLASS = clang/' epics-base/configure/CONFIG.gnuCommon |
266 | - |
267 | - clang --version |
268 | - ;; |
269 | -*) |
270 | - echo "Host compiler is default" |
271 | - gcc --version |
272 | - ;; |
273 | -esac |
274 | - |
275 | -cat <<EOF >> epics-base/configure/CONFIG_SITE |
276 | -USR_CPPFLAGS += $USR_CPPFLAGS |
277 | -USR_CFLAGS += $USR_CFLAGS |
278 | -USR_CXXFLAGS += $USR_CXXFLAGS |
279 | -EOF |
280 | - |
281 | -# set RTEMS to eg. "4.9" or "4.10" |
282 | -# requires qemu, bison, flex, texinfo, install-info |
283 | -if [ -n "$RTEMS" ] |
284 | -then |
285 | - echo "Cross RTEMS${RTEMS} for pc386" |
286 | - install -d /home/travis/.cache |
287 | - curl -L "https://github.com/mdavidsaver/rsb/releases/download/travis-20160306-2/rtems${RTEMS}-i386-trusty-20190306-2.tar.gz" \ |
288 | - | tar -C /home/travis/.cache -xj |
289 | - |
290 | - sed -i -e '/^RTEMS_VERSION/d' -e '/^RTEMS_BASE/d' epics-base/configure/os/CONFIG_SITE.Common.RTEMS |
291 | - cat << EOF >> epics-base/configure/os/CONFIG_SITE.Common.RTEMS |
292 | -RTEMS_VERSION=$RTEMS |
293 | -RTEMS_BASE=/home/travis/.cache/rtems${RTEMS}-i386 |
294 | -EOF |
295 | - cat << EOF >> epics-base/configure/CONFIG_SITE |
296 | -CROSS_COMPILER_TARGET_ARCHS+=RTEMS-pc386 |
297 | -EOF |
298 | - |
299 | - # find local qemu-system-i386 |
300 | - export PATH="$HOME/.cache/qemu/usr/bin:$PATH" |
301 | - echo -n "Using QEMU: " |
302 | - type qemu-system-i386 || echo "Missing qemu" |
303 | - EXTRA=RTEMS_QEMU_FIXUPS=YES |
304 | -fi |
305 | - |
306 | -make -j2 -C epics-base $EXTRA |
307 | diff --git a/modules/ca/.travis.yml b/modules/ca/.travis.yml |
308 | deleted file mode 100644 |
309 | index 5a99b88..0000000 |
310 | --- a/modules/ca/.travis.yml |
311 | +++ /dev/null |
312 | @@ -1,26 +0,0 @@ |
313 | -sudo: false |
314 | -dist: trusty |
315 | -language: c |
316 | -compiler: |
317 | - - gcc |
318 | -addons: |
319 | - apt: |
320 | - packages: |
321 | - - libreadline6-dev |
322 | - - libncurses5-dev |
323 | - - perl |
324 | - - clang |
325 | - - g++-mingw-w64-i686 |
326 | -install: |
327 | - - ./.ci/travis-prepare.sh |
328 | -script: |
329 | - - ./.ci/travis-build.sh |
330 | -env: |
331 | - - BRCORE=master BRLIBCOM=master TEST=NO |
332 | - - CMPLR=clang TEST=NO |
333 | - - USR_CXXFLAGS=-std=c++11 TEST=NO |
334 | - - CMPLR=clang USR_CXXFLAGS=-std=c++11 TEST=NO |
335 | - - WINE=32 TEST=NO STATIC=YES |
336 | - - WINE=32 TEST=NO STATIC=NO |
337 | - - RTEMS=4.10 TEST=NO |
338 | - - RTEMS=4.9 TEST=NO |
339 | diff --git a/modules/ca/Makefile b/modules/ca/Makefile |
340 | index 13feff6..eeb147b 100644 |
341 | --- a/modules/ca/Makefile |
342 | +++ b/modules/ca/Makefile |
343 | @@ -7,11 +7,9 @@ |
344 | # in file LICENSE that is included with this distribution. |
345 | #************************************************************************* |
346 | |
347 | -TOP = . |
348 | +TOP = ../.. |
349 | include $(TOP)/configure/CONFIG |
350 | |
351 | -DIRS += configure src |
352 | - |
353 | -src_DEPEND_DIRS = configure |
354 | +DIRS += src |
355 | |
356 | include $(TOP)/configure/RULES_TOP |
357 | diff --git a/modules/ca/configure/CONFIG b/modules/ca/configure/CONFIG |
358 | deleted file mode 100644 |
359 | index 331fd70..0000000 |
360 | --- a/modules/ca/configure/CONFIG |
361 | +++ /dev/null |
362 | @@ -1,28 +0,0 @@ |
363 | -# CONFIG - Load build configuration data |
364 | -# |
365 | -# Do not make changes to this file! |
366 | - |
367 | -# Allow user to override where the build rules come from |
368 | -RULES = $(EPICS_BASE) |
369 | - |
370 | -# RELEASE files point to other application tops |
371 | -include $(TOP)/configure/RELEASE |
372 | --include $(TOP)/configure/RELEASE.$(EPICS_HOST_ARCH).Common |
373 | -ifdef T_A |
374 | --include $(TOP)/configure/RELEASE.Common.$(T_A) |
375 | --include $(TOP)/configure/RELEASE.$(EPICS_HOST_ARCH).$(T_A) |
376 | -endif |
377 | - |
378 | -CONFIG = $(RULES)/configure |
379 | -include $(CONFIG)/CONFIG |
380 | - |
381 | -# Override the Base definition: |
382 | -INSTALL_LOCATION = $(TOP) |
383 | - |
384 | -# CONFIG_SITE files contain other build configuration settings |
385 | -include $(TOP)/configure/CONFIG_SITE |
386 | --include $(TOP)/configure/CONFIG_SITE.$(EPICS_HOST_ARCH).Common |
387 | -ifdef T_A |
388 | - -include $(TOP)/configure/CONFIG_SITE.Common.$(T_A) |
389 | - -include $(TOP)/configure/CONFIG_SITE.$(EPICS_HOST_ARCH).$(T_A) |
390 | -endif |
391 | diff --git a/modules/ca/configure/CONFIG_SITE b/modules/ca/configure/CONFIG_SITE |
392 | deleted file mode 100644 |
393 | index d78c7f5..0000000 |
394 | --- a/modules/ca/configure/CONFIG_SITE |
395 | +++ /dev/null |
396 | @@ -1,42 +0,0 @@ |
397 | -# CONFIG_SITE |
398 | - |
399 | -# Make any application-specific changes to the EPICS build |
400 | -# configuration variables in this file. |
401 | -# |
402 | -# Host/target specific settings can be specified in files named |
403 | -# CONFIG_SITE.$(EPICS_HOST_ARCH).Common |
404 | -# CONFIG_SITE.Common.$(T_A) |
405 | -# CONFIG_SITE.$(EPICS_HOST_ARCH).$(T_A) |
406 | - |
407 | -# CHECK_RELEASE controls the consistency checking of the support |
408 | -# applications pointed to by the RELEASE* files. |
409 | -# Normally CHECK_RELEASE should be set to YES. |
410 | -# Set CHECK_RELEASE to NO to disable checking completely. |
411 | -# Set CHECK_RELEASE to WARN to perform consistency checking but |
412 | -# continue building even if conflicts are found. |
413 | -CHECK_RELEASE = YES |
414 | - |
415 | -# Set this when you only want to compile this application |
416 | -# for a subset of the cross-compiled target architectures |
417 | -# that Base is built for. |
418 | -#CROSS_COMPILER_TARGET_ARCHS = vxWorks-ppc32 |
419 | - |
420 | -# To install files into a location other than $(TOP) define |
421 | -# INSTALL_LOCATION here. |
422 | -#INSTALL_LOCATION=</absolute/path/to/install/top> |
423 | - |
424 | -# Set this when the IOC and build host use different paths |
425 | -# to the install location. This may be needed to boot from |
426 | -# a Microsoft FTP server say, or on some NFS configurations. |
427 | -#IOCS_APPL_TOP = </IOC's/absolute/path/to/install/top> |
428 | - |
429 | -# For application debugging purposes, override the HOST_OPT and/ |
430 | -# or CROSS_OPT settings from base/configure/CONFIG_SITE |
431 | -#HOST_OPT = NO |
432 | -#CROSS_OPT = NO |
433 | - |
434 | -# These allow developers to override the CONFIG_SITE variable |
435 | -# settings without having to modify the configure/CONFIG_SITE |
436 | -# file itself. |
437 | --include $(TOP)/../CONFIG_SITE.local |
438 | --include $(TOP)/configure/CONFIG_SITE.local |
439 | diff --git a/modules/ca/configure/Makefile b/modules/ca/configure/Makefile |
440 | deleted file mode 100644 |
441 | index e2f3738..0000000 |
442 | --- a/modules/ca/configure/Makefile |
443 | +++ /dev/null |
444 | @@ -1,15 +0,0 @@ |
445 | -#************************************************************************* |
446 | -# EPICS BASE is distributed subject to a Software License Agreement found |
447 | -# in file LICENSE that is included with this distribution. |
448 | -#************************************************************************* |
449 | -TOP = .. |
450 | - |
451 | -include $(TOP)/configure/CONFIG |
452 | - |
453 | -TARGETS = $(CONFIG_TARGETS) |
454 | -CONFIGS += $(subst ../,,$(wildcard $(CONFIG_INSTALLS))) |
455 | - |
456 | -CFG += CONFIG_CA_MODULE |
457 | -CFG += CONFIG_CA_VERSION |
458 | - |
459 | -include $(TOP)/configure/RULES |
460 | diff --git a/modules/ca/configure/RELEASE b/modules/ca/configure/RELEASE |
461 | deleted file mode 100644 |
462 | index a2d9f55..0000000 |
463 | --- a/modules/ca/configure/RELEASE |
464 | +++ /dev/null |
465 | @@ -1,39 +0,0 @@ |
466 | -# RELEASE - Location of external support modules |
467 | -# |
468 | -# IF YOU CHANGE ANY PATHS in this file or make API changes to |
469 | -# any modules it refers to, you should do a "make rebuild" in |
470 | -# this application's top level directory. |
471 | -# |
472 | -# The EPICS build process does not check dependencies against |
473 | -# any files from outside the application, so it is safest to |
474 | -# rebuild it completely if any modules it depends on change. |
475 | -# |
476 | -# Host- or target-specific settings can be given in files named |
477 | -# RELEASE.$(EPICS_HOST_ARCH).Common |
478 | -# RELEASE.Common.$(T_A) |
479 | -# RELEASE.$(EPICS_HOST_ARCH).$(T_A) |
480 | -# |
481 | -# This file is parsed by both GNUmake and an EPICS Perl script, |
482 | -# so it may ONLY contain definititions of paths to other support |
483 | -# modules, variable definitions that are used in module paths, |
484 | -# and include statements that pull in other RELEASE files. |
485 | -# Variables may be used before their values have been set. |
486 | -# Build variables that are NOT used in paths should be set in |
487 | -# the CONFIG_SITE file. |
488 | - |
489 | -# Variables and paths to dependent modules: |
490 | -#MODULES = /path/to/modules |
491 | -#MYMODULE = $(MODULES)/my-module |
492 | - |
493 | -# If building the EPICS modules individually, set these: |
494 | -#EPICS_LIBCOM = $(MODULES)/libcom-3.17.0 |
495 | -#EPICS_BASE = $(MODULES)/core-7.0.1 |
496 | - |
497 | -# Set RULES here if you want to use build rules from elsewhere: |
498 | -#RULES = $(MODULES)/build-rules |
499 | - |
500 | -# These lines allow developers to override these RELEASE settings |
501 | -# without having to modify this file directly. |
502 | --include $(TOP)/../RELEASE.local |
503 | --include $(TOP)/../RELEASE.$(EPICS_HOST_ARCH).local |
504 | --include $(TOP)/configure/RELEASE.local |
505 | diff --git a/modules/ca/configure/RULES b/modules/ca/configure/RULES |
506 | deleted file mode 100644 |
507 | index 6d56e14..0000000 |
508 | --- a/modules/ca/configure/RULES |
509 | +++ /dev/null |
510 | @@ -1,6 +0,0 @@ |
511 | -# RULES |
512 | - |
513 | -include $(CONFIG)/RULES |
514 | - |
515 | -# Library should be rebuilt because LIBOBJS may have changed. |
516 | -$(LIBNAME): ../Makefile |
517 | diff --git a/modules/ca/configure/RULES_DIRS b/modules/ca/configure/RULES_DIRS |
518 | deleted file mode 100644 |
519 | index 3ba269d..0000000 |
520 | --- a/modules/ca/configure/RULES_DIRS |
521 | +++ /dev/null |
522 | @@ -1,2 +0,0 @@ |
523 | -#RULES_DIRS |
524 | -include $(CONFIG)/RULES_DIRS |
525 | diff --git a/modules/ca/configure/RULES_TOP b/modules/ca/configure/RULES_TOP |
526 | deleted file mode 100644 |
527 | index 2b8cbc6..0000000 |
528 | --- a/modules/ca/configure/RULES_TOP |
529 | +++ /dev/null |
530 | @@ -1,2 +0,0 @@ |
531 | -#RULES_TOP |
532 | -include $(CONFIG)/RULES_TOP |
533 | diff --git a/modules/ca/src/Makefile b/modules/ca/src/Makefile |
534 | index 650b355..335cec6 100644 |
535 | --- a/modules/ca/src/Makefile |
536 | +++ b/modules/ca/src/Makefile |
537 | @@ -7,7 +7,7 @@ |
538 | # in the file LICENSE that is included with this distribution. |
539 | #************************************************************************* |
540 | |
541 | -TOP = .. |
542 | +TOP = ../../.. |
543 | include $(TOP)/configure/CONFIG |
544 | |
545 | # Channel Access Client |
546 | diff --git a/modules/ca/src/client/Makefile b/modules/ca/src/client/Makefile |
547 | index c5fc5c4..cae6ee0 100644 |
548 | --- a/modules/ca/src/client/Makefile |
549 | +++ b/modules/ca/src/client/Makefile |
550 | @@ -6,8 +6,8 @@ |
551 | # EPICS BASE is distributed subject to a Software License Agreement found |
552 | # in file LICENSE that is included with this distribution. |
553 | #************************************************************************* |
554 | - |
555 | -TOP = ../.. |
556 | +CURDIR := $(or $(dir $(lastword $(MAKEFILE_LIST))), .) |
557 | +TOP = ../../../.. |
558 | |
559 | include $(TOP)/configure/CONFIG |
560 | |
561 | @@ -109,7 +109,7 @@ EXPAND += S99caRepeater@ |
562 | EXPAND += caRepeater.service@ |
563 | EXPAND_VARS = INSTALL_BIN=$(abspath $(INSTALL_BIN)) |
564 | |
565 | -SRC_DIRS += $(TOP)/src/client/test |
566 | +SRC_DIRS += $(CURDIR)/test |
567 | PROD_HOST += ca_test |
568 | ca_test_SRCS = ca_test_main.c ca_test.c |
569 | ca_test_LIBS = ca Com |
570 | diff --git a/modules/ca/src/perl/Makefile b/modules/ca/src/perl/Makefile |
571 | index 7890f34..65619e9 100644 |
572 | --- a/modules/ca/src/perl/Makefile |
573 | +++ b/modules/ca/src/perl/Makefile |
574 | @@ -5,7 +5,7 @@ |
575 | # in file LICENSE that is included with this distribution. |
576 | #************************************************************************* |
577 | |
578 | -TOP = ../.. |
579 | +TOP = ../../../.. |
580 | include $(TOP)/configure/CONFIG |
581 | |
582 | ifdef T_A |
583 | @@ -55,8 +55,6 @@ ifeq ($(findstring $(OS_CLASS),WIN32 cygwin32),) # Doesn't build on WIN32 |
584 | PERL_MODULES += CA.pm |
585 | PERL_MODULES += $(PERL_ARCHPATH)/$(LOADABLE_SHRLIB_PREFIX)Cap5$(LOADABLE_SHRLIB_SUFFIX) |
586 | |
587 | - PERL_SCRIPTS += caModuleDirs.pm |
588 | - |
589 | HTMLS_DIR = . |
590 | HTMLS = CA.html |
591 | endif |
592 | diff --git a/modules/ca/src/perl/capr.pl b/modules/ca/src/perl/capr.pl |
593 | index e551afc..21e56ec 100644 |
594 | --- a/modules/ca/src/perl/capr.pl |
595 | +++ b/modules/ca/src/perl/capr.pl |
596 | @@ -10,9 +10,7 @@ |
597 | use strict; |
598 | |
599 | use FindBin qw($Bin); |
600 | -use lib ($Bin, "$Bin/../../lib/perl"); |
601 | -use caModuleDirs; |
602 | -no lib $Bin; |
603 | +use lib ("$Bin/../../lib/perl"); |
604 | |
605 | use Getopt::Std; |
606 | use EPICS::Path; |
607 | diff --git a/modules/ca/src/template/Makefile b/modules/ca/src/template/Makefile |
608 | index 913d92b..8683dfd 100644 |
609 | --- a/modules/ca/src/template/Makefile |
610 | +++ b/modules/ca/src/template/Makefile |
611 | @@ -1,4 +1,4 @@ |
612 | -TOP=../.. |
613 | +TOP=../../../.. |
614 | |
615 | include $(TOP)/configure/CONFIG |
616 | |
617 | diff --git a/modules/ca/src/tools/Makefile b/modules/ca/src/tools/Makefile |
618 | index 7ebcc02..c56e21e 100644 |
619 | --- a/modules/ca/src/tools/Makefile |
620 | +++ b/modules/ca/src/tools/Makefile |
621 | @@ -9,7 +9,7 @@ |
622 | # in file LICENSE that is included with this distribution. |
623 | #************************************************************************* |
624 | |
625 | -TOP = ../.. |
626 | +TOP = ../../../.. |
627 | |
628 | include $(TOP)/configure/CONFIG |
629 | |
630 | diff --git a/modules/database/.ci/travis-build.sh b/modules/database/.ci/travis-build.sh |
631 | deleted file mode 100755 |
632 | index 622979b..0000000 |
633 | --- a/modules/database/.ci/travis-build.sh |
634 | +++ /dev/null |
635 | @@ -1,21 +0,0 @@ |
636 | -#!/bin/sh |
637 | -set -e -x |
638 | - |
639 | -# set RTEMS to eg. "4.9" or "4.10" |
640 | -# requires qemu, bison, flex, texinfo, install-info |
641 | -if [ -n "$RTEMS" ] |
642 | -then |
643 | - # find local qemu-system-i386 |
644 | - export PATH="$HOME/.cache/qemu/usr/bin:$PATH" |
645 | - echo -n "Using QEMU: " |
646 | - type qemu-system-i386 || echo "Missing qemu" |
647 | - EXTRA=RTEMS_QEMU_FIXUPS=YES |
648 | -fi |
649 | - |
650 | -make -j2 $EXTRA |
651 | - |
652 | -if [ "$TEST" != "NO" ] |
653 | -then |
654 | - make -j2 tapfiles |
655 | - make -s test-results |
656 | -fi |
657 | diff --git a/modules/database/.ci/travis-prepare.sh b/modules/database/.ci/travis-prepare.sh |
658 | deleted file mode 100755 |
659 | index ce2c18b..0000000 |
660 | --- a/modules/database/.ci/travis-prepare.sh |
661 | +++ /dev/null |
662 | @@ -1,133 +0,0 @@ |
663 | -#!/bin/sh |
664 | -set -e -x |
665 | - |
666 | -CURDIR="$PWD" |
667 | - |
668 | -QDIR="$HOME/.cache/qemu" |
669 | - |
670 | -if [ -n "$RTEMS" -a "$TEST" = "YES" ] |
671 | -then |
672 | - git clone --quiet --branch vme --depth 10 https://github.com/mdavidsaver/qemu.git "$HOME/.build/qemu" |
673 | - cd "$HOME/.build/qemu" |
674 | - |
675 | - HEAD=`git log -n1 --pretty=format:%H` |
676 | - echo "HEAD revision $HEAD" |
677 | - |
678 | - [ -e "$HOME/.cache/qemu/built" ] && BUILT=`cat "$HOME/.cache/qemu/built"` |
679 | - echo "Cached revision $BUILT" |
680 | - |
681 | - if [ "$HEAD" != "$BUILT" ] |
682 | - then |
683 | - echo "Building QEMU" |
684 | - git submodule --quiet update --init |
685 | - |
686 | - install -d "$HOME/.build/qemu/build" |
687 | - cd "$HOME/.build/qemu/build" |
688 | - |
689 | - "$HOME/.build/qemu/configure" --prefix="$HOME/.cache/qemu/usr" --target-list=i386-softmmu --disable-werror |
690 | - make -j2 |
691 | - make install |
692 | - |
693 | - echo "$HEAD" > "$HOME/.cache/qemu/built" |
694 | - fi |
695 | -fi |
696 | - |
697 | -cd "$CURDIR" |
698 | - |
699 | -cat << EOF > configure/RELEASE.local |
700 | -EPICS_BASE=$HOME/.source/epics-base |
701 | -EOF |
702 | - |
703 | -install -d "$HOME/.source" |
704 | -cd "$HOME/.source" |
705 | - |
706 | -add_base_module() { |
707 | - MODULE=$1 |
708 | - BRANCH=$2 |
709 | - ( cd epics-base/modules && \ |
710 | - git clone --quiet --depth 5 --branch "$MODULE"/"$BRANCH" https://github.com/${REPOBASE:-epics-base}/epics-base.git "$MODULE" && \ |
711 | - cd "$MODULE" && git log -n1 ) |
712 | -} |
713 | - |
714 | -git clone --quiet --depth 5 --branch core/"${BRCORE:-master}" https://github.com/${REPOBASE:-epics-base}/epics-base.git epics-base |
715 | -( cd epics-base && git log -n1 ) |
716 | -add_base_module libcom "${BRLIBCOM:-master}" |
717 | -add_base_module ca "${BRCA:-master}" |
718 | - |
719 | -EPICS_HOST_ARCH=`sh epics-base/startup/EpicsHostArch` |
720 | - |
721 | -# requires wine and g++-mingw-w64-i686 |
722 | -if [ "$WINE" = "32" ] |
723 | -then |
724 | - echo "Cross mingw32" |
725 | - sed -i -e '/CMPLR_PREFIX/d' epics-base/configure/os/CONFIG_SITE.linux-x86.win32-x86-mingw |
726 | - cat << EOF >> epics-base/configure/os/CONFIG_SITE.linux-x86.win32-x86-mingw |
727 | -CMPLR_PREFIX=i686-w64-mingw32- |
728 | -EOF |
729 | - cat << EOF >> epics-base/configure/CONFIG_SITE |
730 | -CROSS_COMPILER_TARGET_ARCHS+=win32-x86-mingw |
731 | -EOF |
732 | -fi |
733 | - |
734 | -if [ "$STATIC" = "YES" ] |
735 | -then |
736 | - echo "Build static libraries/executables" |
737 | - cat << EOF >> epics-base/configure/CONFIG_SITE |
738 | -SHARED_LIBRARIES=NO |
739 | -STATIC_BUILD=YES |
740 | -EOF |
741 | -fi |
742 | - |
743 | -case "$CMPLR" in |
744 | -clang) |
745 | - echo "Host compiler is clang" |
746 | - cat << EOF >> epics-base/configure/os/CONFIG_SITE.Common.$EPICS_HOST_ARCH |
747 | -GNU = NO |
748 | -CMPLR_CLASS = clang |
749 | -CC = clang |
750 | -CCC = clang++ |
751 | -EOF |
752 | - |
753 | - # hack |
754 | - sed -i -e 's/CMPLR_CLASS = gcc/CMPLR_CLASS = clang/' epics-base/configure/CONFIG.gnuCommon |
755 | - |
756 | - clang --version |
757 | - ;; |
758 | -*) |
759 | - echo "Host compiler is default" |
760 | - gcc --version |
761 | - ;; |
762 | -esac |
763 | - |
764 | -cat <<EOF >> epics-base/configure/CONFIG_SITE |
765 | -USR_CPPFLAGS += $USR_CPPFLAGS |
766 | -USR_CFLAGS += $USR_CFLAGS |
767 | -USR_CXXFLAGS += $USR_CXXFLAGS |
768 | -EOF |
769 | - |
770 | -# set RTEMS to eg. "4.9" or "4.10" |
771 | -# requires qemu, bison, flex, texinfo, install-info |
772 | -if [ -n "$RTEMS" ] |
773 | -then |
774 | - echo "Cross RTEMS${RTEMS} for pc386" |
775 | - install -d /home/travis/.cache |
776 | - curl -L "https://github.com/mdavidsaver/rsb/releases/download/travis-20160306-2/rtems${RTEMS}-i386-trusty-20190306-2.tar.gz" \ |
777 | - | tar -C /home/travis/.cache -xj |
778 | - |
779 | - sed -i -e '/^RTEMS_VERSION/d' -e '/^RTEMS_BASE/d' epics-base/configure/os/CONFIG_SITE.Common.RTEMS |
780 | - cat << EOF >> epics-base/configure/os/CONFIG_SITE.Common.RTEMS |
781 | -RTEMS_VERSION=$RTEMS |
782 | -RTEMS_BASE=/home/travis/.cache/rtems${RTEMS}-i386 |
783 | -EOF |
784 | - cat << EOF >> epics-base/configure/CONFIG_SITE |
785 | -CROSS_COMPILER_TARGET_ARCHS+=RTEMS-pc386 |
786 | -EOF |
787 | - |
788 | - # find local qemu-system-i386 |
789 | - export PATH="$HOME/.cache/qemu/usr/bin:$PATH" |
790 | - echo -n "Using QEMU: " |
791 | - type qemu-system-i386 || echo "Missing qemu" |
792 | - EXTRA=RTEMS_QEMU_FIXUPS=YES |
793 | -fi |
794 | - |
795 | -make -j2 -C epics-base $EXTRA |
796 | diff --git a/modules/database/.travis.yml b/modules/database/.travis.yml |
797 | deleted file mode 100644 |
798 | index 127ae7b..0000000 |
799 | --- a/modules/database/.travis.yml |
800 | +++ /dev/null |
801 | @@ -1,26 +0,0 @@ |
802 | -sudo: false |
803 | -dist: trusty |
804 | -language: c |
805 | -compiler: |
806 | - - gcc |
807 | -addons: |
808 | - apt: |
809 | - packages: |
810 | - - libreadline6-dev |
811 | - - libncurses5-dev |
812 | - - perl |
813 | - - clang |
814 | - - g++-mingw-w64-i686 |
815 | -install: |
816 | - - ./.ci/travis-prepare.sh |
817 | -script: |
818 | - - ./.ci/travis-build.sh |
819 | -env: |
820 | - - BRCORE=master BRLIBCOM=master BRCA=master |
821 | - - CMPLR=clang |
822 | - - USR_CXXFLAGS=-std=c++11 |
823 | - - CMPLR=clang USR_CXXFLAGS=-std=c++11 |
824 | - - WINE=32 TEST=NO STATIC=YES |
825 | - - WINE=32 TEST=NO STATIC=NO |
826 | - - RTEMS=4.10 TEST=NO |
827 | - - RTEMS=4.9 TEST=NO |
828 | diff --git a/modules/database/Makefile b/modules/database/Makefile |
829 | index 9998e6c..9bb746e 100644 |
830 | --- a/modules/database/Makefile |
831 | +++ b/modules/database/Makefile |
832 | @@ -7,11 +7,10 @@ |
833 | # in file LICENSE that is included with this distribution. |
834 | #************************************************************************* |
835 | |
836 | -TOP = . |
837 | +TOP = ../.. |
838 | include $(TOP)/configure/CONFIG |
839 | |
840 | -DIRS += configure src |
841 | -src_DEPEND_DIRS = configure |
842 | +DIRS += src |
843 | |
844 | DIRS += test |
845 | test_DEPEND_DIRS = src |
846 | diff --git a/modules/database/configure/CONFIG b/modules/database/configure/CONFIG |
847 | deleted file mode 100644 |
848 | index c471407..0000000 |
849 | --- a/modules/database/configure/CONFIG |
850 | +++ /dev/null |
851 | @@ -1,36 +0,0 @@ |
852 | -# CONFIG - Load build configuration data |
853 | -# |
854 | -# Do not make changes to this file! |
855 | - |
856 | -# Allow user to override where the build rules come from |
857 | -RULES = $(EPICS_BASE) |
858 | - |
859 | -# RELEASE files point to other application tops |
860 | -include $(TOP)/configure/RELEASE |
861 | --include $(TOP)/configure/RELEASE.$(EPICS_HOST_ARCH).Common |
862 | -ifdef T_A |
863 | --include $(TOP)/configure/RELEASE.Common.$(T_A) |
864 | --include $(TOP)/configure/RELEASE.$(EPICS_HOST_ARCH).$(T_A) |
865 | -endif |
866 | - |
867 | -BUILDING_DATABASE = DEFINED |
868 | - |
869 | -CONFIG = $(RULES)/configure |
870 | -include $(CONFIG)/CONFIG |
871 | - |
872 | -# Override the Base definition: |
873 | -INSTALL_LOCATION = $(TOP) |
874 | - |
875 | -# Use new RSET definition |
876 | -BASE_CPPFLAGS += -DUSE_TYPED_RSET |
877 | - |
878 | -# Shared library ABI version. |
879 | -SHRLIB_VERSION = $(EPICS_DATABASE_MAJOR_VERSION).$(EPICS_DATABASE_MINOR_VERSION).$(EPICS_DATABASE_MAINTENANCE_VERSION) |
880 | - |
881 | -# CONFIG_SITE files contain other build configuration settings |
882 | -include $(TOP)/configure/CONFIG_SITE |
883 | --include $(TOP)/configure/CONFIG_SITE.$(EPICS_HOST_ARCH).Common |
884 | -ifdef T_A |
885 | - -include $(TOP)/configure/CONFIG_SITE.Common.$(T_A) |
886 | - -include $(TOP)/configure/CONFIG_SITE.$(EPICS_HOST_ARCH).$(T_A) |
887 | -endif |
888 | diff --git a/modules/database/configure/CONFIG_SITE b/modules/database/configure/CONFIG_SITE |
889 | deleted file mode 100644 |
890 | index d78c7f5..0000000 |
891 | --- a/modules/database/configure/CONFIG_SITE |
892 | +++ /dev/null |
893 | @@ -1,42 +0,0 @@ |
894 | -# CONFIG_SITE |
895 | - |
896 | -# Make any application-specific changes to the EPICS build |
897 | -# configuration variables in this file. |
898 | -# |
899 | -# Host/target specific settings can be specified in files named |
900 | -# CONFIG_SITE.$(EPICS_HOST_ARCH).Common |
901 | -# CONFIG_SITE.Common.$(T_A) |
902 | -# CONFIG_SITE.$(EPICS_HOST_ARCH).$(T_A) |
903 | - |
904 | -# CHECK_RELEASE controls the consistency checking of the support |
905 | -# applications pointed to by the RELEASE* files. |
906 | -# Normally CHECK_RELEASE should be set to YES. |
907 | -# Set CHECK_RELEASE to NO to disable checking completely. |
908 | -# Set CHECK_RELEASE to WARN to perform consistency checking but |
909 | -# continue building even if conflicts are found. |
910 | -CHECK_RELEASE = YES |
911 | - |
912 | -# Set this when you only want to compile this application |
913 | -# for a subset of the cross-compiled target architectures |
914 | -# that Base is built for. |
915 | -#CROSS_COMPILER_TARGET_ARCHS = vxWorks-ppc32 |
916 | - |
917 | -# To install files into a location other than $(TOP) define |
918 | -# INSTALL_LOCATION here. |
919 | -#INSTALL_LOCATION=</absolute/path/to/install/top> |
920 | - |
921 | -# Set this when the IOC and build host use different paths |
922 | -# to the install location. This may be needed to boot from |
923 | -# a Microsoft FTP server say, or on some NFS configurations. |
924 | -#IOCS_APPL_TOP = </IOC's/absolute/path/to/install/top> |
925 | - |
926 | -# For application debugging purposes, override the HOST_OPT and/ |
927 | -# or CROSS_OPT settings from base/configure/CONFIG_SITE |
928 | -#HOST_OPT = NO |
929 | -#CROSS_OPT = NO |
930 | - |
931 | -# These allow developers to override the CONFIG_SITE variable |
932 | -# settings without having to modify the configure/CONFIG_SITE |
933 | -# file itself. |
934 | --include $(TOP)/../CONFIG_SITE.local |
935 | --include $(TOP)/configure/CONFIG_SITE.local |
936 | diff --git a/modules/database/configure/Makefile b/modules/database/configure/Makefile |
937 | deleted file mode 100644 |
938 | index dd29209..0000000 |
939 | --- a/modules/database/configure/Makefile |
940 | +++ /dev/null |
941 | @@ -1,15 +0,0 @@ |
942 | -#************************************************************************* |
943 | -# EPICS BASE is distributed subject to a Software License Agreement found |
944 | -# in file LICENSE that is included with this distribution. |
945 | -#************************************************************************* |
946 | -TOP = .. |
947 | - |
948 | -include $(TOP)/configure/CONFIG |
949 | - |
950 | -TARGETS = $(CONFIG_TARGETS) |
951 | -CONFIGS += $(subst ../,,$(wildcard $(CONFIG_INSTALLS))) |
952 | - |
953 | -CFG += CONFIG_DATABASE_MODULE |
954 | -CFG += CONFIG_DATABASE_VERSION |
955 | - |
956 | -include $(TOP)/configure/RULES |
957 | diff --git a/modules/database/configure/RELEASE b/modules/database/configure/RELEASE |
958 | deleted file mode 100644 |
959 | index 9b685a1..0000000 |
960 | --- a/modules/database/configure/RELEASE |
961 | +++ /dev/null |
962 | @@ -1,40 +0,0 @@ |
963 | -# RELEASE - Location of external support modules |
964 | -# |
965 | -# IF YOU CHANGE ANY PATHS in this file or make API changes to |
966 | -# any modules it refers to, you should do a "make rebuild" in |
967 | -# this application's top level directory. |
968 | -# |
969 | -# The EPICS build process does not check dependencies against |
970 | -# any files from outside the application, so it is safest to |
971 | -# rebuild it completely if any modules it depends on change. |
972 | -# |
973 | -# Host- or target-specific settings can be given in files named |
974 | -# RELEASE.$(EPICS_HOST_ARCH).Common |
975 | -# RELEASE.Common.$(T_A) |
976 | -# RELEASE.$(EPICS_HOST_ARCH).$(T_A) |
977 | -# |
978 | -# This file is parsed by both GNUmake and an EPICS Perl script, |
979 | -# so it may ONLY contain definititions of paths to other support |
980 | -# modules, variable definitions that are used in module paths, |
981 | -# and include statements that pull in other RELEASE files. |
982 | -# Variables may be used before their values have been set. |
983 | -# Build variables that are NOT used in paths should be set in |
984 | -# the CONFIG_SITE file. |
985 | - |
986 | -# Variables and paths to dependent modules: |
987 | -#MODULES = /path/to/modules |
988 | -#MYMODULE = $(MODULES)/my-module |
989 | - |
990 | -# If building the EPICS modules individually, set these: |
991 | -#EPICS_CA = $(MODULES)/ca-4.13.1 |
992 | -#EPICS_LIBCOM = $(MODULES)/libcom-3.17.0 |
993 | -#EPICS_BASE = $(MODULES)/core-7.0.1 |
994 | - |
995 | -# Set RULES here if you want to use build rules from elsewhere: |
996 | -#RULES = $(MODULES)/build-rules |
997 | - |
998 | -# These lines allow developers to override these RELEASE settings |
999 | -# without having to modify this file directly. |
1000 | --include $(TOP)/../RELEASE.local |
1001 | --include $(TOP)/../RELEASE.$(EPICS_HOST_ARCH).local |
1002 | --include $(TOP)/configure/RELEASE.local |
1003 | diff --git a/modules/database/configure/RULES b/modules/database/configure/RULES |
1004 | deleted file mode 100644 |
1005 | index 6d56e14..0000000 |
1006 | --- a/modules/database/configure/RULES |
1007 | +++ /dev/null |
1008 | @@ -1,6 +0,0 @@ |
1009 | -# RULES |
1010 | - |
1011 | -include $(CONFIG)/RULES |
1012 | - |
1013 | -# Library should be rebuilt because LIBOBJS may have changed. |
1014 | -$(LIBNAME): ../Makefile |
1015 | diff --git a/modules/database/configure/RULES.ioc b/modules/database/configure/RULES.ioc |
1016 | deleted file mode 100644 |
1017 | index 901987c..0000000 |
1018 | --- a/modules/database/configure/RULES.ioc |
1019 | +++ /dev/null |
1020 | @@ -1,2 +0,0 @@ |
1021 | -#RULES.ioc |
1022 | -include $(CONFIG)/RULES.ioc |
1023 | diff --git a/modules/database/configure/RULES_DIRS b/modules/database/configure/RULES_DIRS |
1024 | deleted file mode 100644 |
1025 | index 3ba269d..0000000 |
1026 | --- a/modules/database/configure/RULES_DIRS |
1027 | +++ /dev/null |
1028 | @@ -1,2 +0,0 @@ |
1029 | -#RULES_DIRS |
1030 | -include $(CONFIG)/RULES_DIRS |
1031 | diff --git a/modules/database/configure/RULES_TOP b/modules/database/configure/RULES_TOP |
1032 | deleted file mode 100644 |
1033 | index 2b8cbc6..0000000 |
1034 | --- a/modules/database/configure/RULES_TOP |
1035 | +++ /dev/null |
1036 | @@ -1,2 +0,0 @@ |
1037 | -#RULES_TOP |
1038 | -include $(CONFIG)/RULES_TOP |
1039 | diff --git a/modules/database/src/Makefile b/modules/database/src/Makefile |
1040 | index dfd1d3b..0cc46fa 100644 |
1041 | --- a/modules/database/src/Makefile |
1042 | +++ b/modules/database/src/Makefile |
1043 | @@ -7,7 +7,7 @@ |
1044 | # in the file LICENSE that is included with this distribution. |
1045 | #************************************************************************* |
1046 | |
1047 | -TOP = .. |
1048 | +TOP = ../../.. |
1049 | include $(TOP)/configure/CONFIG |
1050 | |
1051 | # PDB Tools |
1052 | diff --git a/modules/database/src/ioc/Makefile b/modules/database/src/ioc/Makefile |
1053 | index 3258728..9ff0040 100644 |
1054 | --- a/modules/database/src/ioc/Makefile |
1055 | +++ b/modules/database/src/ioc/Makefile |
1056 | @@ -6,12 +6,14 @@ |
1057 | # EPICS BASE is distributed subject to a Software License Agreement found |
1058 | # in file LICENSE that is included with this distribution. |
1059 | #************************************************************************* |
1060 | -TOP=../.. |
1061 | +IOCDIR := $(or $(dir $(lastword $(MAKEFILE_LIST))), .) |
1062 | +TOP=../../../.. |
1063 | |
1064 | include $(TOP)/configure/CONFIG |
1065 | |
1066 | -SRC = $(TOP)/src |
1067 | -IOCDIR = $(SRC)/ioc |
1068 | +USR_CPPFLAGS += -DUSE_TYPED_RSET |
1069 | + |
1070 | +SHRLIB_VERSION = 3.17.0 |
1071 | |
1072 | LIBRARY_IOC += dbCore |
1073 | dbCore_LIBS += ca Com |
1074 | diff --git a/modules/database/src/std/Makefile b/modules/database/src/std/Makefile |
1075 | index 20a8658..2434bf0 100644 |
1076 | --- a/modules/database/src/std/Makefile |
1077 | +++ b/modules/database/src/std/Makefile |
1078 | @@ -6,11 +6,13 @@ |
1079 | # EPICS BASE is distributed subject to a Software License Agreement found |
1080 | # in file LICENSE that is included with this distribution. |
1081 | #************************************************************************* |
1082 | - |
1083 | -TOP = ../.. |
1084 | +STDDIR := $(or $(dir $(lastword $(MAKEFILE_LIST))), .) |
1085 | +TOP = ../../../.. |
1086 | include $(TOP)/configure/CONFIG |
1087 | |
1088 | -STDDIR=$(TOP)/src/std |
1089 | +USR_CPPFLAGS += -DUSE_TYPED_RSET |
1090 | + |
1091 | +SHRLIB_VERSION = 3.17.0 |
1092 | |
1093 | LIBRARY_IOC += dbRecStd |
1094 | dbRecStd_LIBS = dbCore ca Com |
1095 | diff --git a/modules/database/src/template/Makefile b/modules/database/src/template/Makefile |
1096 | index 6259b6f..8dfc6c6 100644 |
1097 | --- a/modules/database/src/template/Makefile |
1098 | +++ b/modules/database/src/template/Makefile |
1099 | @@ -1,4 +1,4 @@ |
1100 | -TOP=../.. |
1101 | +TOP=../../../.. |
1102 | |
1103 | include $(TOP)/configure/CONFIG |
1104 | |
1105 | diff --git a/modules/database/src/tools/Makefile b/modules/database/src/tools/Makefile |
1106 | index e19c0c5..f54ab9c 100644 |
1107 | --- a/modules/database/src/tools/Makefile |
1108 | +++ b/modules/database/src/tools/Makefile |
1109 | @@ -4,7 +4,7 @@ |
1110 | # EPICS BASE is distributed subject to a Software License Agreement found |
1111 | # in file LICENSE that is included with this distribution. |
1112 | #************************************************************************* |
1113 | -TOP=../.. |
1114 | +TOP=../../../.. |
1115 | |
1116 | include $(TOP)/configure/CONFIG |
1117 | |
1118 | @@ -27,8 +27,6 @@ PERL_MODULES += DBD/Variable.pm |
1119 | PERL_MODULES += EPICS/IOC.pm |
1120 | HTMLS += EPICS/IOC.html |
1121 | |
1122 | -PERL_SCRIPTS += databaseModuleDirs.pm |
1123 | - |
1124 | PERL_SCRIPTS += makeIncludeDbd.pl |
1125 | |
1126 | PERL_SCRIPTS += dbdToMenuH.pl |
1127 | diff --git a/modules/database/src/tools/dbExpand.pl b/modules/database/src/tools/dbExpand.pl |
1128 | index 25cab26..6596e43 100644 |
1129 | --- a/modules/database/src/tools/dbExpand.pl |
1130 | +++ b/modules/database/src/tools/dbExpand.pl |
1131 | @@ -12,9 +12,7 @@ |
1132 | use strict; |
1133 | |
1134 | use FindBin qw($Bin); |
1135 | -use lib ($Bin, "$Bin/../../lib/perl"); |
1136 | -use databaseModuleDirs; |
1137 | -no lib $Bin; |
1138 | +use lib ("$Bin/../../lib/perl"); |
1139 | |
1140 | use DBD; |
1141 | use DBD::Parser; |
1142 | diff --git a/modules/database/src/tools/dbdExpand.pl b/modules/database/src/tools/dbdExpand.pl |
1143 | index a87ef47..74e81eb 100644 |
1144 | --- a/modules/database/src/tools/dbdExpand.pl |
1145 | +++ b/modules/database/src/tools/dbdExpand.pl |
1146 | @@ -10,9 +10,7 @@ |
1147 | use strict; |
1148 | |
1149 | use FindBin qw($Bin); |
1150 | -use lib ($Bin, "$Bin/../../lib/perl"); |
1151 | -use databaseModuleDirs; |
1152 | -no lib $Bin; |
1153 | +use lib ("$Bin/../../lib/perl"); |
1154 | |
1155 | use DBD; |
1156 | use DBD::Parser; |
1157 | diff --git a/modules/database/src/tools/dbdReport.pl b/modules/database/src/tools/dbdReport.pl |
1158 | index 0d4c854..3f2269d 100644 |
1159 | --- a/modules/database/src/tools/dbdReport.pl |
1160 | +++ b/modules/database/src/tools/dbdReport.pl |
1161 | @@ -8,9 +8,7 @@ |
1162 | #************************************************************************* |
1163 | |
1164 | use FindBin qw($Bin); |
1165 | -use lib ($Bin, "$Bin/../../lib/perl"); |
1166 | -use databaseModuleDirs; |
1167 | -no lib $Bin; |
1168 | +use lib ("$Bin/../../lib/perl"); |
1169 | |
1170 | use DBD; |
1171 | use DBD::Parser; |
1172 | diff --git a/modules/database/src/tools/dbdToHtml.pl b/modules/database/src/tools/dbdToHtml.pl |
1173 | index e9711f7..66d46f9 100644 |
1174 | --- a/modules/database/src/tools/dbdToHtml.pl |
1175 | +++ b/modules/database/src/tools/dbdToHtml.pl |
1176 | @@ -10,9 +10,7 @@ |
1177 | use strict; |
1178 | |
1179 | use FindBin qw($Bin); |
1180 | -use lib ($Bin, "$Bin/../../lib/perl"); |
1181 | -use databaseModuleDirs; |
1182 | -no lib $Bin; |
1183 | +use lib ("$Bin/../../lib/perl"); |
1184 | |
1185 | use DBD; |
1186 | use DBD::Parser; |
1187 | diff --git a/modules/database/src/tools/dbdToMenuH.pl b/modules/database/src/tools/dbdToMenuH.pl |
1188 | index ac4345b..76aff7d 100644 |
1189 | --- a/modules/database/src/tools/dbdToMenuH.pl |
1190 | +++ b/modules/database/src/tools/dbdToMenuH.pl |
1191 | @@ -8,9 +8,7 @@ |
1192 | #************************************************************************* |
1193 | |
1194 | use FindBin qw($Bin); |
1195 | -use lib ($Bin, "$Bin/../../lib/perl"); |
1196 | -use databaseModuleDirs; |
1197 | -no lib $Bin; |
1198 | +use lib ("$Bin/../../lib/perl"); |
1199 | |
1200 | use EPICS::Getopts; |
1201 | use File::Basename; |
1202 | diff --git a/modules/database/src/tools/dbdToRecordtypeH.pl b/modules/database/src/tools/dbdToRecordtypeH.pl |
1203 | index b1eb77d..891b5b5 100644 |
1204 | --- a/modules/database/src/tools/dbdToRecordtypeH.pl |
1205 | +++ b/modules/database/src/tools/dbdToRecordtypeH.pl |
1206 | @@ -8,9 +8,7 @@ |
1207 | #************************************************************************* |
1208 | |
1209 | use FindBin qw($Bin); |
1210 | -use lib ($Bin, "$Bin/../../lib/perl"); |
1211 | -use databaseModuleDirs; |
1212 | -no lib $Bin; |
1213 | +use lib ("$Bin/../../lib/perl"); |
1214 | |
1215 | use EPICS::Getopts; |
1216 | use File::Basename; |
1217 | diff --git a/modules/database/src/tools/registerRecordDeviceDriver.pl b/modules/database/src/tools/registerRecordDeviceDriver.pl |
1218 | index 02bb9b7..acbcc51 100644 |
1219 | --- a/modules/database/src/tools/registerRecordDeviceDriver.pl |
1220 | +++ b/modules/database/src/tools/registerRecordDeviceDriver.pl |
1221 | @@ -12,9 +12,7 @@ |
1222 | use strict; |
1223 | |
1224 | use FindBin qw($Bin); |
1225 | -use lib ($Bin, "$Bin/../../lib/perl"); |
1226 | -use databaseModuleDirs; |
1227 | -no lib $Bin; |
1228 | +use lib ("$Bin/../../lib/perl"); |
1229 | |
1230 | use DBD; |
1231 | use DBD::Parser; |
1232 | diff --git a/modules/database/test/Makefile b/modules/database/test/Makefile |
1233 | index 0f2c642..b54d017 100644 |
1234 | --- a/modules/database/test/Makefile |
1235 | +++ b/modules/database/test/Makefile |
1236 | @@ -7,7 +7,7 @@ |
1237 | # in file LICENSE that is included with this distribution. |
1238 | #************************************************************************* |
1239 | |
1240 | -TOP = .. |
1241 | +TOP = ../../.. |
1242 | include $(TOP)/configure/CONFIG |
1243 | |
1244 | DIRS += ioc/db |
1245 | diff --git a/modules/database/test/ioc/db/Makefile b/modules/database/test/ioc/db/Makefile |
1246 | index e1f06cd..ee2ab76 100644 |
1247 | --- a/modules/database/test/ioc/db/Makefile |
1248 | +++ b/modules/database/test/ioc/db/Makefile |
1249 | @@ -6,12 +6,13 @@ |
1250 | # EPICS BASE is distributed subject to a Software License Agreement found |
1251 | # in the file LICENSE that is included with this distribution. |
1252 | #************************************************************************* |
1253 | - |
1254 | -TOP = ../../.. |
1255 | +CURDIR := $(or $(dir $(lastword $(MAKEFILE_LIST))), .) |
1256 | +TOP = ../../../../.. |
1257 | include $(TOP)/configure/CONFIG |
1258 | |
1259 | # Allow access to private headers in db/ |
1260 | -USR_CPPFLAGS = -I $(TOP)/src/ioc/db |
1261 | +USR_CPPFLAGS += -I $(CURDIR)/../../../src/ioc/db |
1262 | +USR_CPPFLAGS += -DUSE_TYPED_RSET |
1263 | |
1264 | TESTLIBRARY = dbTestIoc |
1265 | |
1266 | diff --git a/modules/database/test/ioc/dbtemplate/Makefile b/modules/database/test/ioc/dbtemplate/Makefile |
1267 | index 4442a4f..dbb13f3 100644 |
1268 | --- a/modules/database/test/ioc/dbtemplate/Makefile |
1269 | +++ b/modules/database/test/ioc/dbtemplate/Makefile |
1270 | @@ -5,7 +5,7 @@ |
1271 | # in the file LICENSE that is included with this distribution. |
1272 | #************************************************************************* |
1273 | |
1274 | -TOP = ../../.. |
1275 | +TOP = ../../../../.. |
1276 | |
1277 | include $(TOP)/configure/CONFIG |
1278 | |
1279 | diff --git a/modules/database/test/std/filters/Makefile b/modules/database/test/std/filters/Makefile |
1280 | index 718b8d5..c95e108 100644 |
1281 | --- a/modules/database/test/std/filters/Makefile |
1282 | +++ b/modules/database/test/std/filters/Makefile |
1283 | @@ -7,10 +7,12 @@ |
1284 | # in the file LICENSE that is included with this distribution. |
1285 | #************************************************************************* |
1286 | |
1287 | -TOP = ../../.. |
1288 | +TOP = ../../../../.. |
1289 | |
1290 | include $(TOP)/configure/CONFIG |
1291 | |
1292 | +USR_CPPFLAGS += -DUSE_TYPED_RSET |
1293 | + |
1294 | TESTLIBRARY = Recs |
1295 | |
1296 | Recs_SRCS += xRecord.c |
1297 | diff --git a/modules/database/test/std/link/Makefile b/modules/database/test/std/link/Makefile |
1298 | index 8540cdf..2563fd5 100644 |
1299 | --- a/modules/database/test/std/link/Makefile |
1300 | +++ b/modules/database/test/std/link/Makefile |
1301 | @@ -4,10 +4,12 @@ |
1302 | # EPICS BASE is distributed subject to a Software License Agreement found |
1303 | # in the file LICENSE that is included with this distribution. |
1304 | #************************************************************************* |
1305 | -TOP=../../.. |
1306 | +TOP=../../../../.. |
1307 | |
1308 | include $(TOP)/configure/CONFIG |
1309 | |
1310 | +USR_CPPFLAGS += -DUSE_TYPED_RSET |
1311 | + |
1312 | TESTLIBRARY = Recs |
1313 | |
1314 | Recs_SRCS += ioRecord.c |
1315 | diff --git a/modules/database/test/std/rec/Makefile b/modules/database/test/std/rec/Makefile |
1316 | index 185c2c0..8720875 100644 |
1317 | --- a/modules/database/test/std/rec/Makefile |
1318 | +++ b/modules/database/test/std/rec/Makefile |
1319 | @@ -7,9 +7,11 @@ |
1320 | # in the file LICENSE that is included with this distribution. |
1321 | #************************************************************************* |
1322 | |
1323 | -TOP = ../../.. |
1324 | +TOP = ../../../../.. |
1325 | include $(TOP)/configure/CONFIG |
1326 | |
1327 | +USR_CPPFLAGS += -DUSE_TYPED_RSET |
1328 | + |
1329 | TESTLIBRARY = dbRecStdTest |
1330 | |
1331 | dbRecStdTest_SRCS += asTestLib.c |
1332 | diff --git a/modules/database/test/tools/Makefile b/modules/database/test/tools/Makefile |
1333 | index ac7f420..2dd045e 100644 |
1334 | --- a/modules/database/test/tools/Makefile |
1335 | +++ b/modules/database/test/tools/Makefile |
1336 | @@ -5,7 +5,7 @@ |
1337 | # in the file LICENSE that is included with this distribution. |
1338 | #************************************************************************* |
1339 | |
1340 | -TOP = ../.. |
1341 | +TOP = ../../../.. |
1342 | include $(TOP)/configure/CONFIG |
1343 | |
1344 | |
1345 | diff --git a/modules/libcom/.ci/travis-build.sh b/modules/libcom/.ci/travis-build.sh |
1346 | deleted file mode 100755 |
1347 | index 622979b..0000000 |
1348 | --- a/modules/libcom/.ci/travis-build.sh |
1349 | +++ /dev/null |
1350 | @@ -1,21 +0,0 @@ |
1351 | -#!/bin/sh |
1352 | -set -e -x |
1353 | - |
1354 | -# set RTEMS to eg. "4.9" or "4.10" |
1355 | -# requires qemu, bison, flex, texinfo, install-info |
1356 | -if [ -n "$RTEMS" ] |
1357 | -then |
1358 | - # find local qemu-system-i386 |
1359 | - export PATH="$HOME/.cache/qemu/usr/bin:$PATH" |
1360 | - echo -n "Using QEMU: " |
1361 | - type qemu-system-i386 || echo "Missing qemu" |
1362 | - EXTRA=RTEMS_QEMU_FIXUPS=YES |
1363 | -fi |
1364 | - |
1365 | -make -j2 $EXTRA |
1366 | - |
1367 | -if [ "$TEST" != "NO" ] |
1368 | -then |
1369 | - make -j2 tapfiles |
1370 | - make -s test-results |
1371 | -fi |
1372 | diff --git a/modules/libcom/.ci/travis-prepare.sh b/modules/libcom/.ci/travis-prepare.sh |
1373 | deleted file mode 100755 |
1374 | index 9a4d237..0000000 |
1375 | --- a/modules/libcom/.ci/travis-prepare.sh |
1376 | +++ /dev/null |
1377 | @@ -1,123 +0,0 @@ |
1378 | -#!/bin/sh |
1379 | -set -e -x |
1380 | - |
1381 | -CURDIR="$PWD" |
1382 | - |
1383 | -QDIR="$HOME/.cache/qemu" |
1384 | - |
1385 | -if [ -n "$RTEMS" -a "$TEST" = "YES" ] |
1386 | -then |
1387 | - git clone --quiet --branch vme --depth 10 https://github.com/mdavidsaver/qemu.git "$HOME/.build/qemu" |
1388 | - cd "$HOME/.build/qemu" |
1389 | - |
1390 | - HEAD=`git log -n1 --pretty=format:%H` |
1391 | - echo "HEAD revision $HEAD" |
1392 | - |
1393 | - [ -e "$HOME/.cache/qemu/built" ] && BUILT=`cat "$HOME/.cache/qemu/built"` |
1394 | - echo "Cached revision $BUILT" |
1395 | - |
1396 | - if [ "$HEAD" != "$BUILT" ] |
1397 | - then |
1398 | - echo "Building QEMU" |
1399 | - git submodule --quiet update --init |
1400 | - |
1401 | - install -d "$HOME/.build/qemu/build" |
1402 | - cd "$HOME/.build/qemu/build" |
1403 | - |
1404 | - "$HOME/.build/qemu/configure" --prefix="$HOME/.cache/qemu/usr" --target-list=i386-softmmu --disable-werror |
1405 | - make -j2 |
1406 | - make install |
1407 | - |
1408 | - echo "$HEAD" > "$HOME/.cache/qemu/built" |
1409 | - fi |
1410 | -fi |
1411 | - |
1412 | -cd "$CURDIR" |
1413 | - |
1414 | -cat << EOF > configure/RELEASE.local |
1415 | -EPICS_BASE=$HOME/.source/epics-base |
1416 | -EOF |
1417 | - |
1418 | -install -d "$HOME/.source" |
1419 | -cd "$HOME/.source" |
1420 | - |
1421 | -git clone --quiet --depth 5 --branch core/"${BRCORE:-master}" https://github.com/${REPOBASE:-epics-base}/epics-base.git epics-base |
1422 | -(cd epics-base && git log -n1 ) |
1423 | - |
1424 | -EPICS_HOST_ARCH=`sh epics-base/startup/EpicsHostArch` |
1425 | - |
1426 | -# requires wine and g++-mingw-w64-i686 |
1427 | -if [ "$WINE" = "32" ] |
1428 | -then |
1429 | - echo "Cross mingw32" |
1430 | - sed -i -e '/CMPLR_PREFIX/d' epics-base/configure/os/CONFIG_SITE.linux-x86.win32-x86-mingw |
1431 | - cat << EOF >> epics-base/configure/os/CONFIG_SITE.linux-x86.win32-x86-mingw |
1432 | -CMPLR_PREFIX=i686-w64-mingw32- |
1433 | -EOF |
1434 | - cat << EOF >> epics-base/configure/CONFIG_SITE |
1435 | -CROSS_COMPILER_TARGET_ARCHS+=win32-x86-mingw |
1436 | -EOF |
1437 | -fi |
1438 | - |
1439 | -if [ "$STATIC" = "YES" ] |
1440 | -then |
1441 | - echo "Build static libraries/executables" |
1442 | - cat << EOF >> epics-base/configure/CONFIG_SITE |
1443 | -SHARED_LIBRARIES=NO |
1444 | -STATIC_BUILD=YES |
1445 | -EOF |
1446 | -fi |
1447 | - |
1448 | -case "$CMPLR" in |
1449 | -clang) |
1450 | - echo "Host compiler is clang" |
1451 | - cat << EOF >> epics-base/configure/os/CONFIG_SITE.Common.$EPICS_HOST_ARCH |
1452 | -GNU = NO |
1453 | -CMPLR_CLASS = clang |
1454 | -CC = clang |
1455 | -CCC = clang++ |
1456 | -EOF |
1457 | - |
1458 | - # hack |
1459 | - sed -i -e 's/CMPLR_CLASS = gcc/CMPLR_CLASS = clang/' epics-base/configure/CONFIG.gnuCommon |
1460 | - |
1461 | - clang --version |
1462 | - ;; |
1463 | -*) |
1464 | - echo "Host compiler is default" |
1465 | - gcc --version |
1466 | - ;; |
1467 | -esac |
1468 | - |
1469 | -cat <<EOF >> epics-base/configure/CONFIG_SITE |
1470 | -USR_CPPFLAGS += $USR_CPPFLAGS |
1471 | -USR_CFLAGS += $USR_CFLAGS |
1472 | -USR_CXXFLAGS += $USR_CXXFLAGS |
1473 | -EOF |
1474 | - |
1475 | -# set RTEMS to eg. "4.9" or "4.10" |
1476 | -# requires qemu, bison, flex, texinfo, install-info |
1477 | -if [ -n "$RTEMS" ] |
1478 | -then |
1479 | - echo "Cross RTEMS${RTEMS} for pc386" |
1480 | - install -d /home/travis/.cache |
1481 | - curl -L "https://github.com/mdavidsaver/rsb/releases/download/travis-20160306-2/rtems${RTEMS}-i386-trusty-20190306-2.tar.gz" \ |
1482 | - | tar -C /home/travis/.cache -xj |
1483 | - |
1484 | - sed -i -e '/^RTEMS_VERSION/d' -e '/^RTEMS_BASE/d' epics-base/configure/os/CONFIG_SITE.Common.RTEMS |
1485 | - cat << EOF >> epics-base/configure/os/CONFIG_SITE.Common.RTEMS |
1486 | -RTEMS_VERSION=$RTEMS |
1487 | -RTEMS_BASE=/home/travis/.cache/rtems${RTEMS}-i386 |
1488 | -EOF |
1489 | - cat << EOF >> epics-base/configure/CONFIG_SITE |
1490 | -CROSS_COMPILER_TARGET_ARCHS+=RTEMS-pc386 |
1491 | -EOF |
1492 | - |
1493 | - # find local qemu-system-i386 |
1494 | - export PATH="$HOME/.cache/qemu/usr/bin:$PATH" |
1495 | - echo -n "Using QEMU: " |
1496 | - type qemu-system-i386 || echo "Missing qemu" |
1497 | - EXTRA=RTEMS_QEMU_FIXUPS=YES |
1498 | -fi |
1499 | - |
1500 | -make -j2 -C epics-base $EXTRA |
1501 | diff --git a/modules/libcom/.travis.yml b/modules/libcom/.travis.yml |
1502 | deleted file mode 100644 |
1503 | index 8b1e2ab..0000000 |
1504 | --- a/modules/libcom/.travis.yml |
1505 | +++ /dev/null |
1506 | @@ -1,26 +0,0 @@ |
1507 | -sudo: false |
1508 | -dist: trusty |
1509 | -language: c |
1510 | -compiler: |
1511 | - - gcc |
1512 | -addons: |
1513 | - apt: |
1514 | - packages: |
1515 | - - libreadline6-dev |
1516 | - - libncurses5-dev |
1517 | - - perl |
1518 | - - clang |
1519 | - - g++-mingw-w64-i686 |
1520 | -install: |
1521 | - - ./.ci/travis-prepare.sh |
1522 | -script: |
1523 | - - ./.ci/travis-build.sh |
1524 | -env: |
1525 | - - BRCORE=master |
1526 | - - CMPLR=clang |
1527 | - - USR_CXXFLAGS=-std=c++11 |
1528 | - - CMPLR=clang USR_CXXFLAGS=-std=c++11 |
1529 | - - WINE=32 TEST=NO STATIC=YES |
1530 | - - WINE=32 TEST=NO STATIC=NO |
1531 | - - RTEMS=4.10 TEST=NO |
1532 | - - RTEMS=4.9 TEST=NO |
1533 | diff --git a/modules/libcom/Makefile b/modules/libcom/Makefile |
1534 | index 442a6f7..5a03a43 100644 |
1535 | --- a/modules/libcom/Makefile |
1536 | +++ b/modules/libcom/Makefile |
1537 | @@ -7,11 +7,10 @@ |
1538 | # in file LICENSE that is included with this distribution. |
1539 | #************************************************************************* |
1540 | |
1541 | -TOP = . |
1542 | +TOP = ../.. |
1543 | include $(TOP)/configure/CONFIG |
1544 | |
1545 | -DIRS += configure src |
1546 | -src_DEPEND_DIRS = configure |
1547 | +DIRS += src |
1548 | |
1549 | DIRS += RTEMS |
1550 | RTEMS_DEPEND_DIRS = src |
1551 | @@ -22,4 +21,4 @@ vxWorks_DEPEND_DIRS = src |
1552 | DIRS += test |
1553 | test_DEPEND_DIRS = RTEMS vxWorks |
1554 | |
1555 | -include $(TOP)/configure/RULES_TOP |
1556 | +include $(TOP)/configure/RULES_DIRS |
1557 | diff --git a/modules/libcom/RTEMS/Makefile b/modules/libcom/RTEMS/Makefile |
1558 | index 311c250..b46889d 100644 |
1559 | --- a/modules/libcom/RTEMS/Makefile |
1560 | +++ b/modules/libcom/RTEMS/Makefile |
1561 | @@ -7,7 +7,7 @@ |
1562 | # in file LICENSE that is included with this distribution. |
1563 | #************************************************************************* |
1564 | |
1565 | -TOP = .. |
1566 | +TOP = ../../.. |
1567 | include $(TOP)/configure/CONFIG |
1568 | include $(TOP)/configure/CONFIG_LIBCOM_VERSION |
1569 | |
1570 | diff --git a/modules/libcom/configure/CONFIG b/modules/libcom/configure/CONFIG |
1571 | deleted file mode 100644 |
1572 | index 774ed25..0000000 |
1573 | --- a/modules/libcom/configure/CONFIG |
1574 | +++ /dev/null |
1575 | @@ -1,44 +0,0 @@ |
1576 | -# CONFIG - Load build configuration data |
1577 | -# |
1578 | -# Do not make changes to this file! |
1579 | - |
1580 | -ifeq ($(strip $(EPICS_HOST_ARCH)),) |
1581 | - $(warning EPICS_HOST_ARCH is not set.) |
1582 | -endif |
1583 | - |
1584 | -# Allow user to override where the build rules come from |
1585 | -RULES = $(EPICS_BASE) |
1586 | - |
1587 | -# RELEASE files point to other application tops |
1588 | -include $(TOP)/configure/RELEASE |
1589 | --include $(TOP)/configure/RELEASE.$(EPICS_HOST_ARCH).Common |
1590 | -ifdef T_A |
1591 | --include $(TOP)/configure/RELEASE.Common.$(T_A) |
1592 | --include $(TOP)/configure/RELEASE.$(EPICS_HOST_ARCH).$(T_A) |
1593 | -endif |
1594 | - |
1595 | -ifeq ($(strip $(RULES)),) |
1596 | - ifeq ($(strip $(EPICS_BASE)),) |
1597 | - $(warning Build error: EPICS_BASE not set after including RELEASE files.) |
1598 | - else |
1599 | - $(warning Build error: EPICS_BASE set but RULES variable empty.) |
1600 | - endif |
1601 | - $(error Makefiles loaded: $(MAKEFILE_LIST)) |
1602 | - # Die before the include of $(CONFIG)/CONFIG below does |
1603 | -endif |
1604 | - |
1605 | -BUILDING_LIBCOM = DEFINED |
1606 | - |
1607 | -CONFIG = $(RULES)/configure |
1608 | -include $(CONFIG)/CONFIG |
1609 | - |
1610 | -# Override the Base definition: |
1611 | -INSTALL_LOCATION = $(TOP) |
1612 | - |
1613 | -# CONFIG_SITE files contain other build configuration settings |
1614 | -include $(TOP)/configure/CONFIG_SITE |
1615 | --include $(TOP)/configure/CONFIG_SITE.$(EPICS_HOST_ARCH).Common |
1616 | -ifdef T_A |
1617 | - -include $(TOP)/configure/CONFIG_SITE.Common.$(T_A) |
1618 | - -include $(TOP)/configure/CONFIG_SITE.$(EPICS_HOST_ARCH).$(T_A) |
1619 | -endif |
1620 | diff --git a/modules/libcom/configure/CONFIG_SITE b/modules/libcom/configure/CONFIG_SITE |
1621 | deleted file mode 100644 |
1622 | index d78c7f5..0000000 |
1623 | --- a/modules/libcom/configure/CONFIG_SITE |
1624 | +++ /dev/null |
1625 | @@ -1,42 +0,0 @@ |
1626 | -# CONFIG_SITE |
1627 | - |
1628 | -# Make any application-specific changes to the EPICS build |
1629 | -# configuration variables in this file. |
1630 | -# |
1631 | -# Host/target specific settings can be specified in files named |
1632 | -# CONFIG_SITE.$(EPICS_HOST_ARCH).Common |
1633 | -# CONFIG_SITE.Common.$(T_A) |
1634 | -# CONFIG_SITE.$(EPICS_HOST_ARCH).$(T_A) |
1635 | - |
1636 | -# CHECK_RELEASE controls the consistency checking of the support |
1637 | -# applications pointed to by the RELEASE* files. |
1638 | -# Normally CHECK_RELEASE should be set to YES. |
1639 | -# Set CHECK_RELEASE to NO to disable checking completely. |
1640 | -# Set CHECK_RELEASE to WARN to perform consistency checking but |
1641 | -# continue building even if conflicts are found. |
1642 | -CHECK_RELEASE = YES |
1643 | - |
1644 | -# Set this when you only want to compile this application |
1645 | -# for a subset of the cross-compiled target architectures |
1646 | -# that Base is built for. |
1647 | -#CROSS_COMPILER_TARGET_ARCHS = vxWorks-ppc32 |
1648 | - |
1649 | -# To install files into a location other than $(TOP) define |
1650 | -# INSTALL_LOCATION here. |
1651 | -#INSTALL_LOCATION=</absolute/path/to/install/top> |
1652 | - |
1653 | -# Set this when the IOC and build host use different paths |
1654 | -# to the install location. This may be needed to boot from |
1655 | -# a Microsoft FTP server say, or on some NFS configurations. |
1656 | -#IOCS_APPL_TOP = </IOC's/absolute/path/to/install/top> |
1657 | - |
1658 | -# For application debugging purposes, override the HOST_OPT and/ |
1659 | -# or CROSS_OPT settings from base/configure/CONFIG_SITE |
1660 | -#HOST_OPT = NO |
1661 | -#CROSS_OPT = NO |
1662 | - |
1663 | -# These allow developers to override the CONFIG_SITE variable |
1664 | -# settings without having to modify the configure/CONFIG_SITE |
1665 | -# file itself. |
1666 | --include $(TOP)/../CONFIG_SITE.local |
1667 | --include $(TOP)/configure/CONFIG_SITE.local |
1668 | diff --git a/modules/libcom/configure/Makefile b/modules/libcom/configure/Makefile |
1669 | deleted file mode 100644 |
1670 | index 85a7b58..0000000 |
1671 | --- a/modules/libcom/configure/Makefile |
1672 | +++ /dev/null |
1673 | @@ -1,15 +0,0 @@ |
1674 | -#************************************************************************* |
1675 | -# EPICS BASE is distributed subject to a Software License Agreement found |
1676 | -# in file LICENSE that is included with this distribution. |
1677 | -#************************************************************************* |
1678 | -TOP = .. |
1679 | - |
1680 | -include $(TOP)/configure/CONFIG |
1681 | - |
1682 | -TARGETS = $(CONFIG_TARGETS) |
1683 | -CONFIGS += $(subst ../,,$(wildcard $(CONFIG_INSTALLS))) |
1684 | - |
1685 | -CFG += CONFIG_LIBCOM_MODULE |
1686 | -CFG += CONFIG_LIBCOM_VERSION |
1687 | - |
1688 | -include $(TOP)/configure/RULES |
1689 | diff --git a/modules/libcom/configure/RELEASE b/modules/libcom/configure/RELEASE |
1690 | deleted file mode 100644 |
1691 | index 819b441..0000000 |
1692 | --- a/modules/libcom/configure/RELEASE |
1693 | +++ /dev/null |
1694 | @@ -1,38 +0,0 @@ |
1695 | -# RELEASE - Location of external support modules |
1696 | -# |
1697 | -# IF YOU CHANGE ANY PATHS in this file or make API changes to |
1698 | -# any modules it refers to, you should do a "make rebuild" in |
1699 | -# this application's top level directory. |
1700 | -# |
1701 | -# The EPICS build process does not check dependencies against |
1702 | -# any files from outside the application, so it is safest to |
1703 | -# rebuild it completely if any modules it depends on change. |
1704 | -# |
1705 | -# Host- or target-specific settings can be given in files named |
1706 | -# RELEASE.$(EPICS_HOST_ARCH).Common |
1707 | -# RELEASE.Common.$(T_A) |
1708 | -# RELEASE.$(EPICS_HOST_ARCH).$(T_A) |
1709 | -# |
1710 | -# This file is parsed by both GNUmake and an EPICS Perl script, |
1711 | -# so it may ONLY contain definititions of paths to other support |
1712 | -# modules, variable definitions that are used in module paths, |
1713 | -# and include statements that pull in other RELEASE files. |
1714 | -# Variables may be used before their values have been set. |
1715 | -# Build variables that are NOT used in paths should be set in |
1716 | -# the CONFIG_SITE file. |
1717 | - |
1718 | -# Variables and paths to dependent modules: |
1719 | -#MODULES = /path/to/modules |
1720 | -#MYMODULE = $(MODULES)/my-module |
1721 | - |
1722 | -# If building the EPICS modules individually, set these: |
1723 | -#EPICS_BASE = $(MODULES)/core-7.0.1 |
1724 | - |
1725 | -# Set RULES here if you want to use build rules from elsewhere: |
1726 | -#RULES = $(MODULES)/build-rules |
1727 | - |
1728 | -# These lines allow developers to override these RELEASE settings |
1729 | -# without having to modify this file directly. |
1730 | --include $(TOP)/../RELEASE.local |
1731 | --include $(TOP)/../RELEASE.$(EPICS_HOST_ARCH).local |
1732 | --include $(TOP)/configure/RELEASE.local |
1733 | diff --git a/modules/libcom/configure/RULES b/modules/libcom/configure/RULES |
1734 | deleted file mode 100644 |
1735 | index 6d56e14..0000000 |
1736 | --- a/modules/libcom/configure/RULES |
1737 | +++ /dev/null |
1738 | @@ -1,6 +0,0 @@ |
1739 | -# RULES |
1740 | - |
1741 | -include $(CONFIG)/RULES |
1742 | - |
1743 | -# Library should be rebuilt because LIBOBJS may have changed. |
1744 | -$(LIBNAME): ../Makefile |
1745 | diff --git a/modules/libcom/configure/RULES_DIRS b/modules/libcom/configure/RULES_DIRS |
1746 | deleted file mode 100644 |
1747 | index 3ba269d..0000000 |
1748 | --- a/modules/libcom/configure/RULES_DIRS |
1749 | +++ /dev/null |
1750 | @@ -1,2 +0,0 @@ |
1751 | -#RULES_DIRS |
1752 | -include $(CONFIG)/RULES_DIRS |
1753 | diff --git a/modules/libcom/configure/RULES_TOP b/modules/libcom/configure/RULES_TOP |
1754 | deleted file mode 100644 |
1755 | index 2b8cbc6..0000000 |
1756 | --- a/modules/libcom/configure/RULES_TOP |
1757 | +++ /dev/null |
1758 | @@ -1,2 +0,0 @@ |
1759 | -#RULES_TOP |
1760 | -include $(CONFIG)/RULES_TOP |
1761 | diff --git a/modules/libcom/src/Makefile b/modules/libcom/src/Makefile |
1762 | index d61b268..4a1c61e 100644 |
1763 | --- a/modules/libcom/src/Makefile |
1764 | +++ b/modules/libcom/src/Makefile |
1765 | @@ -6,15 +6,13 @@ |
1766 | # EPICS BASE is distributed subject to a Software License Agreement found |
1767 | # in file LICENSE that is included with this distribution. |
1768 | #************************************************************************* |
1769 | - |
1770 | -TOP = .. |
1771 | +LIBCOM := $(or $(dir $(lastword $(MAKEFILE_LIST))), .) |
1772 | +TOP = ../../.. |
1773 | include $(TOP)/configure/CONFIG |
1774 | |
1775 | # Uncomment this to remove the (benign) valgrind helper stubs |
1776 | #USR_CFLAGS += -DNVALGRIND |
1777 | |
1778 | -LIBCOM = $(TOP)/src |
1779 | - |
1780 | INC += valgrind/valgrind.h |
1781 | |
1782 | INC += libComVersion.h |
1783 | diff --git a/modules/libcom/src/env/Makefile b/modules/libcom/src/env/Makefile |
1784 | index 804426b..94322a2 100644 |
1785 | --- a/modules/libcom/src/env/Makefile |
1786 | +++ b/modules/libcom/src/env/Makefile |
1787 | @@ -12,7 +12,6 @@ SRC_DIRS += $(LIBCOM)/env |
1788 | vpath %.pl $(USR_VPATH) $(SRC_DIRS) |
1789 | |
1790 | PERL_SCRIPTS += bldEnvData.pl |
1791 | -PERL_SCRIPTS += libcomModuleDirs.pm |
1792 | |
1793 | INC += envDefs.h |
1794 | |
1795 | diff --git a/modules/libcom/src/env/RULES b/modules/libcom/src/env/RULES |
1796 | index 02df6aa..5ef766d 100644 |
1797 | --- a/modules/libcom/src/env/RULES |
1798 | +++ b/modules/libcom/src/env/RULES |
1799 | @@ -8,7 +8,7 @@ |
1800 | # This is a Makefile fragment, see src/libCom/Makefile. |
1801 | |
1802 | envData.c: $(LIBCOM)/env/envDefs.h \ |
1803 | - $(INSTALL_HOST_BIN)/bldEnvData.pl $(INSTALL_HOST_BIN)/libcomModuleDirs.pm \ |
1804 | + $(INSTALL_HOST_BIN)/bldEnvData.pl \ |
1805 | $(CONFIG)/CONFIG_ENV $(CONFIG)/CONFIG_SITE_ENV \ |
1806 | $(wildcard $(CONFIG)/os/CONFIG_SITE_ENV.$(T_A)) |
1807 | $(PERL) $(INSTALL_HOST_BIN)/bldEnvData.pl $(QUIET_FLAG) -t $(T_A) \ |
1808 | diff --git a/modules/libcom/src/env/bldEnvData.pl b/modules/libcom/src/env/bldEnvData.pl |
1809 | index e3c21b7..693be65 100644 |
1810 | --- a/modules/libcom/src/env/bldEnvData.pl |
1811 | +++ b/modules/libcom/src/env/bldEnvData.pl |
1812 | @@ -14,9 +14,7 @@ |
1813 | use strict; |
1814 | |
1815 | use FindBin qw($Bin); |
1816 | -use lib ($Bin, "$Bin/../../lib/perl"); |
1817 | -use libcomModuleDirs; |
1818 | -no lib $Bin; |
1819 | +use lib ("$Bin/../../lib/perl"); |
1820 | |
1821 | use Getopt::Std; |
1822 | use File::Basename; |
1823 | diff --git a/modules/libcom/test/Makefile b/modules/libcom/test/Makefile |
1824 | index c8680e3..e90c6bc 100755 |
1825 | --- a/modules/libcom/test/Makefile |
1826 | +++ b/modules/libcom/test/Makefile |
1827 | @@ -7,7 +7,7 @@ |
1828 | # in file LICENSE that is included with this distribution. |
1829 | #************************************************************************* |
1830 | |
1831 | -TOP = .. |
1832 | +TOP = ../../.. |
1833 | include $(TOP)/configure/CONFIG |
1834 | |
1835 | PROD_LIBS += Com |
1836 | diff --git a/modules/libcom/vxWorks/Makefile b/modules/libcom/vxWorks/Makefile |
1837 | index e2c0b5d..3eced3b 100644 |
1838 | --- a/modules/libcom/vxWorks/Makefile |
1839 | +++ b/modules/libcom/vxWorks/Makefile |
1840 | @@ -5,7 +5,7 @@ |
1841 | # in file LICENSE that is included with this distribution. |
1842 | #************************************************************************* |
1843 | |
1844 | -TOP = .. |
1845 | +TOP = ../../.. |
1846 | include $(TOP)/configure/CONFIG |
1847 | |
1848 | # Install Boost smart_ptr headers needed by VxWorks 6.x |
1849 | diff --git a/src/template/base/makeBaseApp.pl b/src/template/base/makeBaseApp.pl |
1850 | index d6da8ad..0421f00 100644 |
1851 | --- a/src/template/base/makeBaseApp.pl |
1852 | +++ b/src/template/base/makeBaseApp.pl |
1853 | @@ -3,7 +3,7 @@ |
1854 | # Authors: Ralph Lange, Marty Kraimer, Andrew Johnson and Janet Anderson |
1855 | |
1856 | use FindBin qw($Bin); |
1857 | -use lib ("$Bin/../../lib/perl", $Bin); |
1858 | +use lib ("$Bin/../../lib/perl"); |
1859 | |
1860 | use Cwd; |
1861 | use Getopt::Std; |
1862 | diff --git a/src/tools/convertRelease.pl b/src/tools/convertRelease.pl |
1863 | index a5a1a77..2533784 100644 |
1864 | --- a/src/tools/convertRelease.pl |
1865 | +++ b/src/tools/convertRelease.pl |
1866 | @@ -19,7 +19,7 @@ use Getopt::Std; |
1867 | $Getopt::Std::STANDARD_HELP_VERSION = 1; |
1868 | |
1869 | use FindBin qw($Bin); |
1870 | -use lib ("$Bin/../../lib/perl", $Bin); |
1871 | +use lib ("$Bin/../../lib/perl"); |
1872 | |
1873 | use EPICS::Path; |
1874 | use EPICS::Release; |
1875 | diff --git a/src/tools/expandVars.pl b/src/tools/expandVars.pl |
1876 | index 01e65fb..855aca3 100644 |
1877 | --- a/src/tools/expandVars.pl |
1878 | +++ b/src/tools/expandVars.pl |
1879 | @@ -10,7 +10,7 @@ |
1880 | use strict; |
1881 | |
1882 | use FindBin qw($Bin); |
1883 | -use lib ("$Bin/../../lib/perl", $Bin); |
1884 | +use lib ("$Bin/../../lib/perl"); |
1885 | |
1886 | use EPICS::Getopts; |
1887 | use EPICS::Path; |
1888 | diff --git a/src/tools/fullPathName.pl b/src/tools/fullPathName.pl |
1889 | index c8ac49a..20ef6d2 100644 |
1890 | --- a/src/tools/fullPathName.pl |
1891 | +++ b/src/tools/fullPathName.pl |
1892 | @@ -17,7 +17,7 @@ use Getopt::Std; |
1893 | $Getopt::Std::STANDARD_HELP_VERSION = 1; |
1894 | |
1895 | use FindBin qw($Bin); |
1896 | -use lib ("$Bin/../../lib/perl", $Bin); |
1897 | +use lib ("$Bin/../../lib/perl"); |
1898 | |
1899 | use EPICS::Path; |
1900 |
Not saying that I approve of this change, but while I'm looking at what you did...
You probably didn't see these Perl errors (which only occur after a distclean):
tux% make -s -C configure anj/base- 7.0/src/ tools/. ./../lib/ perl /home/phoebus/ ANJ/perl5/ lib/perl5 /usr/local/ lib64/perl5 /usr/local/ share/perl5 /usr/lib64/ perl5/vendor_ perl /usr/share/ perl5/vendor_ perl /usr/lib64/perl5 /usr/share/perl5 .) at ../src/ tools/convertRe lease.pl line 24. tools/convertRe lease.pl line 24. anj/base- 7.0/src/ tools/. ./../lib/ perl /home/phoebus/ ANJ/perl5/ lib/perl5 /usr/local/ lib64/perl5 /usr/local/ share/perl5 /usr/lib64/ perl5/vendor_ perl /usr/share/ perl5/vendor_ perl /usr/lib64/perl5 /usr/share/perl5 .) at ../../src/ tools/convertRe lease.pl line 24. tools/convertRe lease.pl line 24.
Can't locate EPICS/Path.pm in @INC (@INC contains: /local/
BEGIN failed--compilation aborted at ../src/
Can't locate EPICS/Path.pm in @INC (@INC contains: /local/
BEGIN failed--compilation aborted at ../../src/
...
They are easy to fix though, just revert your changes in src/tools. Those scripts are designed to be able to be run from the src/tools directory before the build has got as far as installing them, so by including $Bin in the library search path (i.e. the path to the directory that the .pl script is actually running from) they can find the local modules they need (which also haven't been installed yet). The src/tools scripts never loaded a xxxModuleDirs file.
For the other scripts where you removed $Bin from the search path and a 'use xxxModuleDirs;', you should also remove the now unnecessary line
no lib $Bin;
which removed $Bin from the library search path after the xxxModuleDirs file had been loaded.