Current Makefiles place 'include, lib, dbd, bin' folders in directory higher than stream folder because support folder contains configure folder as well!
pi@raspberrypi:/epics/support/stream $ ls -ltr ..
total 116
-rw-r--r-- 1 pi pi 3526 Apr 10 06:31 README
-rw-r--r-- 1 pi pi 3718 Apr 10 06:31 LICENSE
-rw-r--r-- 1 pi pi 541 Apr 10 06:31 README.md
-rw-r--r-- 1 pi pi 4540 Apr 10 06:31 Makefile
-rwxr-xr-x 1 pi pi 11872 Apr 10 06:31 assemble_synApps.sh
drwxr-xr-x 3 pi pi 4096 Apr 10 06:31 documentation
drwxr-xr-x 10 pi pi 4096 Apr 10 06:31 utils
drwxr-xr-x 7 pi pi 4096 Apr 10 06:31 modbus
drwxr-xr-x 9 pi pi 4096 Apr 10 06:31 motor
drwxr-xr-x 13 pi pi 4096 Apr 10 09:34 seq
drwxr-xr-x 12 pi pi 4096 Apr 10 09:44 sscan
drwxr-xr-x 14 pi pi 4096 Apr 10 10:23 calc
drwxr-xr-x 33 pi pi 4096 Apr 10 10:23 asyn
drwxr-xr-x 17 pi pi 4096 Apr 10 10:36 iocStats
drwxr-xr-x 14 pi pi 4096 Apr 10 10:54 std
drwxr-xr-x 14 pi pi 4096 Apr 10 10:56 autosave
drwxr-xr-x 13 pi pi 4096 Apr 10 10:57 busy
drwxr-xr-x 6 pi pi 4096 Apr 24 15:46 configure
drwxr-xr-x 9 pi pi 4096 Apr 24 15:46 caputRecorder
drwxr-xr-x 12 pi pi 4096 Apr 24 15:46 delaygen
drwxr-xr-x 12 pi pi 4096 Apr 24 16:08 mca
drwxr-xr-x 8 pi pi 4096 Apr 24 16:49 stream
drwxr-xr-x 2 pi pi 4096 Apr 24 16:51 include
drwxr-xr-x 3 pi pi 4096 Apr 24 16:51 lib
drwxr-xr-x 2 pi pi 4096 Apr 24 16:52 dbd
drwxr-xr-x 3 pi pi 4096 Apr 24 16:52 bin
I made quick fix in
stream/Makefile
TOP = .
ifneq ($(wildcard ../configure),)
# We are in an EPICS R3.14+ <TOP> location
include $(TOP)/configure/CONFIG
else ifneq ($(wildcard ../config),)
# We are in an EPICS R3.13 <TOP> location
CONFIG = $(TOP)/config
include $(TOP)/config/CONFIG_APP
else
# Using our own local configuration
TOP = .
DIRS = configure
src_DEPEND_DIRS := $(DIRS)
include $(TOP)/configure/CONFIG
#endif
stream/src/Makefile
#TOP = ../..
TOP = ..
ifneq ($(wildcard ../../configure),)
include $(TOP)/configure/CONFIG
else ifneq ($(wildcard ../../config),)
include $(TOP)/config/CONFIG_APP
include $(TOP)/config/RULES_ARCHS
else
TOP= ..
include $(TOP)/configure/CONFIG
endif
stream/streamApp/Makefile
#TOP = ../..
TOP = ..
ifneq ($(wildcard ../../configure),)
include $(TOP)/configure/CONFIG
else ifneq ($(wildcard ../../config),)
include $(TOP)/config/CONFIG_APP
include $(TOP)/config/RULES_ARCHS
else
TOP= ..
include $(TOP)/configure/CONFIG
endif
After above changes
pi@raspberrypi:/epics/support/stream $ ls -ltr
total 92
-rw-r--r-- 1 pi pi 1211 Apr 10 06:31 GNUmakefile
-rw-r--r-- 1 pi pi 1509 Apr 24 16:20 README.md
-rw-r--r-- 1 pi pi 7652 Apr 24 16:20 LICENSE.LESSER
-rw-r--r-- 1 pi pi 35149 Apr 24 16:20 LICENSE
drwxr-xr-x 2 pi pi 4096 Apr 24 16:20 config
drwxr-xr-x 2 pi pi 4096 Apr 24 16:20 docs
drwxr-xr-x 5 pi pi 4096 Apr 24 17:03 configure
drwxr-xr-x 4 pi pi 4096 Apr 24 17:03 src
drwxr-xr-x 2 pi pi 4096 Apr 24 17:03 include
drwxr-xr-x 3 pi pi 4096 Apr 24 17:03 lib
drwxr-xr-x 5 pi pi 4096 Apr 24 17:03 streamApp
drwxr-xr-x 2 pi pi 4096 Apr 24 17:03 dbd
drwxr-xr-x 3 pi pi 4096 Apr 24 17:03 bin
-rw-r--r-- 1 pi pi 1573 Apr 24 17:11 Makefile
I can refine this logic further, and create a pull request.
TOP = .
ifneq ($(wildcard ./configure),)
include $(TOP)/configure/CONFIG
else ifneq ($(wildcard ../config),)
include $(TOP)/config/CONFIG_APP
include $(TOP)/config/RULES_ARCHS
else # Redundant
TOP= .
include $(TOP)/configure/CONFIG
endif
Current Makefiles place 'include, lib, dbd, bin' folders in directory higher than stream folder because support folder contains configure folder as well!
I made quick fix in
After above changes
I can refine this logic further, and create a pull request.
TOP = . ifneq ($(wildcard ./configure),) include $(TOP)/configure/CONFIG else ifneq ($(wildcard ../config),) include $(TOP)/config/CONFIG_APP include $(TOP)/config/RULES_ARCHS else # Redundant TOP= . include $(TOP)/configure/CONFIG endif