From 394901aa68b4d8ecd7da38c8fdca9a0cf6054a9e Mon Sep 17 00:00:00 2001 From: Minijackson Date: Mon, 29 Jul 2024 08:55:51 +0200 Subject: [PATCH 1/2] ioc/tests: init example-ioc test Tests that the example IOC generated by makeBaseApp.pl compiles, run, and is coherent. --- ioc/tests/default.nix | 1 + ioc/tests/example-ioc/default.nix | 69 +++++++++++++++++++++++++ ioc/tests/example-ioc/epnix.nix | 23 +++++++++ ioc/tests/example-ioc/example-top.patch | 21 ++++++++ 4 files changed, 114 insertions(+) create mode 100644 ioc/tests/example-ioc/default.nix create mode 100644 ioc/tests/example-ioc/epnix.nix create mode 100644 ioc/tests/example-ioc/example-top.patch diff --git a/ioc/tests/default.nix b/ioc/tests/default.nix index 4150e7d8..5ee713fb 100644 --- a/ioc/tests/default.nix +++ b/ioc/tests/default.nix @@ -3,6 +3,7 @@ with pkgs.lib; { default-ioc-epics-base-3 = import ./default-ioc "3" args; default-ioc-epics-base-7 = import ./default-ioc "7" args; + example-ioc = import ./example-ioc args; pyepics = import ./pyepics args; diff --git a/ioc/tests/example-ioc/default.nix b/ioc/tests/example-ioc/default.nix new file mode 100644 index 00000000..dcd711a5 --- /dev/null +++ b/ioc/tests/example-ioc/default.nix @@ -0,0 +1,69 @@ +{pkgs, ...}: let + inherit (pkgs) epnixLib; + inherit (pkgs.stdenv.hostPlatform) system; + + result = epnixLib.evalEpnixModules { + nixpkgsConfig.system = system; + epnixConfig.imports = [ + (import ./epnix.nix) + ]; + }; + + service = result.config.epnix.nixos.services.ioc.config; + + ioc = result.outputs.build; +in + pkgs.nixosTest { + name = "example-ioc"; + meta.maintainers = with epnixLib.maintainers; [minijackson]; + + nodes.machine = { + environment.systemPackages = [pkgs.epnix.epics-base]; + systemd.services.ioc = service; + }; + + testScript = '' + machine.wait_for_unit("default.target") + machine.wait_for_unit("ioc.service") + + def logs_has(content: str) -> None: + machine.wait_until_succeeds(f"journalctl --no-pager -u ioc.service | grep -F '{content}'") + + with subtest("wait until started"): + machine.wait_until_succeeds("caget -t epnix:aiExample") + + with subtest("EPICS revision is correct"): + logs_has("## EPICS R7") + + with subtest("ai/calc records"): + ai_example = int(machine.wait_until_succeeds("caget -t epnix:aiExample").strip()) + assert 0 <= ai_example <= 9 + + with subtest("version record"): + assert machine.succeed("caget -t epnix:simple:version").strip() == "EPNix" + + with subtest("aSub record"): + logs_has("Record epnix:aSubExample called myAsubInit") + logs_has("Record epnix:aSubExample called myAsubProcess") + + # Also needs the debug mode activated above + with subtest("sub record"): + logs_has("Record epnix:subExample called mySubInit") + machine.succeed("caput epnix:subExample 42") + logs_has("Record epnix:subExample called mySubProcess") + + with subtest("Sequencer program is running"): + logs_has("sncExample: Startup delay over") + logs_has("sncExample: Changing to") + + with subtest("Sequencer program is running"): + machine.succeed("echo 'hello world' | nc localhost 2000 -N") + logs_has("Hello world, from simple") + + # TODO: test QSRV, but it feels flaky, pvget times-out most of the time + ''; + + passthru = { + inherit ioc; + }; + } diff --git a/ioc/tests/example-ioc/epnix.nix b/ioc/tests/example-ioc/epnix.nix new file mode 100644 index 00000000..28911e17 --- /dev/null +++ b/ioc/tests/example-ioc/epnix.nix @@ -0,0 +1,23 @@ +{pkgs, ...}: { + epnix = { + meta.name = "checks-example-ioc"; + buildConfig.src = + pkgs.runCommand "example-top" { + nativeBuildInputs = [pkgs.epnix.epics-base]; + } '' + mkdir $out + cd $out + makeBaseApp.pl -u epnix -t example simple + makeBaseApp.pl -u epnix -t example -i -a linux-x86_64 -p simple Simple + ''; + + buildConfig.attrs.patches = [./example-top.patch]; + + support.modules = with pkgs.epnix.support; [seq]; + + nixos.services.ioc = { + app = "simple"; + ioc = "iocSimple"; + }; + }; +} diff --git a/ioc/tests/example-ioc/example-top.patch b/ioc/tests/example-ioc/example-top.patch new file mode 100644 index 00000000..95c2e9fb --- /dev/null +++ b/ioc/tests/example-ioc/example-top.patch @@ -0,0 +1,21 @@ +diff --git a/iocBoot/iocSimple/st.cmd b/iocBoot/iocSimple/st.cmd +index af59327..bc12277 100755 +--- a/iocBoot/iocSimple/st.cmd ++++ b/iocBoot/iocSimple/st.cmd +@@ -17,13 +17,13 @@ dbLoadRecords "db/simpleVersion.db", "user=epnix" + dbLoadRecords "db/dbSubExample.db", "user=epnix" + + #- Set this to see messages from mySub +-#-var mySubDebug 1 ++var mySubDebug 1 + + #- Run this to trace the stages of iocInit +-#-traceIocInit ++traceIocInit + + cd "${TOP}/iocBoot/${IOC}" + iocInit + + ## Start any sequence programs +-#seq sncExample, "user=epnix" ++seq sncExample, "user=epnix" From 4833ebd3e1fece559bd86db085a6da303b644b0c Mon Sep 17 00:00:00 2001 From: Minijackson Date: Mon, 29 Jul 2024 09:25:29 +0200 Subject: [PATCH 2/2] ioc/test/default-ioc: test IOC directly generated by makeBaseApp.pl --- ioc/tests/default-ioc/default-top-3.patch | 13 ++++++ ioc/tests/default-ioc/default-top-7.patch | 26 +++++++++++ ioc/tests/default-ioc/default.nix | 2 +- ioc/tests/default-ioc/epnix.nix | 28 ++++++++++++ .../{top/simpleApp/Db => }/simple.db | 0 ioc/tests/default-ioc/top/.gitignore | 29 ------------ ioc/tests/default-ioc/top/Makefile | 31 ------------- ioc/tests/default-ioc/top/configure/CONFIG | 45 ------------------- .../default-ioc/top/configure/CONFIG_SITE | 43 ------------------ ioc/tests/default-ioc/top/configure/Makefile | 8 ---- ioc/tests/default-ioc/top/configure/RELEASE | 42 ----------------- ioc/tests/default-ioc/top/configure/RULES | 6 --- ioc/tests/default-ioc/top/configure/RULES.ioc | 2 - .../default-ioc/top/configure/RULES_DIRS | 2 - ioc/tests/default-ioc/top/configure/RULES_TOP | 3 -- ioc/tests/default-ioc/top/epnix.nix | 13 ------ ioc/tests/default-ioc/top/iocBoot/Makefile | 6 --- .../top/iocBoot/iocsimple/Makefile | 5 --- .../default-ioc/top/iocBoot/iocsimple/st.cmd | 10 ----- .../default-ioc/top/simpleApp/Db/Makefile | 11 ----- ioc/tests/default-ioc/top/simpleApp/Makefile | 14 ------ .../default-ioc/top/simpleApp/src/Makefile | 29 ------------ .../top/simpleApp/src/simpleMain.cpp | 23 ---------- 23 files changed, 68 insertions(+), 323 deletions(-) create mode 100644 ioc/tests/default-ioc/default-top-3.patch create mode 100644 ioc/tests/default-ioc/default-top-7.patch create mode 100644 ioc/tests/default-ioc/epnix.nix rename ioc/tests/default-ioc/{top/simpleApp/Db => }/simple.db (100%) delete mode 100644 ioc/tests/default-ioc/top/.gitignore delete mode 100644 ioc/tests/default-ioc/top/Makefile delete mode 100644 ioc/tests/default-ioc/top/configure/CONFIG delete mode 100644 ioc/tests/default-ioc/top/configure/CONFIG_SITE delete mode 100644 ioc/tests/default-ioc/top/configure/Makefile delete mode 100644 ioc/tests/default-ioc/top/configure/RELEASE delete mode 100644 ioc/tests/default-ioc/top/configure/RULES delete mode 100644 ioc/tests/default-ioc/top/configure/RULES.ioc delete mode 100644 ioc/tests/default-ioc/top/configure/RULES_DIRS delete mode 100644 ioc/tests/default-ioc/top/configure/RULES_TOP delete mode 100644 ioc/tests/default-ioc/top/epnix.nix delete mode 100644 ioc/tests/default-ioc/top/iocBoot/Makefile delete mode 100644 ioc/tests/default-ioc/top/iocBoot/iocsimple/Makefile delete mode 100644 ioc/tests/default-ioc/top/iocBoot/iocsimple/st.cmd delete mode 100644 ioc/tests/default-ioc/top/simpleApp/Db/Makefile delete mode 100644 ioc/tests/default-ioc/top/simpleApp/Makefile delete mode 100644 ioc/tests/default-ioc/top/simpleApp/src/Makefile delete mode 100644 ioc/tests/default-ioc/top/simpleApp/src/simpleMain.cpp diff --git a/ioc/tests/default-ioc/default-top-3.patch b/ioc/tests/default-ioc/default-top-3.patch new file mode 100644 index 00000000..6a0c1449 --- /dev/null +++ b/ioc/tests/default-ioc/default-top-3.patch @@ -0,0 +1,13 @@ +diff --git a/simpleApp/Db/Makefile b/simpleApp/Db/Makefile +index 8eb9727..ea49598 100644 +--- a/simpleApp/Db/Makefile ++++ b/simpleApp/Db/Makefile +@@ -6,7 +6,7 @@ include $(TOP)/configure/CONFIG + #---------------------------------------------------- + # Create and install (or just install) into /db + # databases, templates, substitutions like this +-#DB += xxx.db ++DB += simple.db + + #---------------------------------------------------- + # If .db template is not named *.template add diff --git a/ioc/tests/default-ioc/default-top-7.patch b/ioc/tests/default-ioc/default-top-7.patch new file mode 100644 index 00000000..f767bb93 --- /dev/null +++ b/ioc/tests/default-ioc/default-top-7.patch @@ -0,0 +1,26 @@ +diff --git a/iocBoot/iocSimple/st.cmd b/iocBoot/iocSimple/st.cmd +index abda300..0d162ac 100644 +--- a/iocBoot/iocSimple/st.cmd ++++ b/iocBoot/iocSimple/st.cmd +@@ -10,7 +10,7 @@ dbLoadDatabase "../../dbd/simple.dbd" + simple_registerRecordDeviceDriver(pdbbase) + + ## Load record instances +-#dbLoadRecords("../../db/simple.db","user=epnix") ++dbLoadRecords("../../db/simple.db","user=epnix") + + iocInit() + +diff --git a/simpleApp/Db/Makefile b/simpleApp/Db/Makefile +index 8eb9727..ea49598 100644 +--- a/simpleApp/Db/Makefile ++++ b/simpleApp/Db/Makefile +@@ -6,7 +6,7 @@ include $(TOP)/configure/CONFIG + #---------------------------------------------------- + # Create and install (or just install) into /db + # databases, templates, substitutions like this +-#DB += xxx.db ++DB += simple.db + + #---------------------------------------------------- + # If .db template is not named *.template add diff --git a/ioc/tests/default-ioc/default.nix b/ioc/tests/default-ioc/default.nix index 0fd66191..08b80b0e 100644 --- a/ioc/tests/default-ioc/default.nix +++ b/ioc/tests/default-ioc/default.nix @@ -5,7 +5,7 @@ releaseBranch: {pkgs, ...}: let result = epnixLib.evalEpnixModules { nixpkgsConfig.system = system; epnixConfig.imports = [ - (import ./top/epnix.nix releaseBranch) + (import ./epnix.nix releaseBranch) ]; }; diff --git a/ioc/tests/default-ioc/epnix.nix b/ioc/tests/default-ioc/epnix.nix new file mode 100644 index 00000000..e1030646 --- /dev/null +++ b/ioc/tests/default-ioc/epnix.nix @@ -0,0 +1,28 @@ +releaseBranch: {pkgs, ...}: { + epnix = { + meta.name = "checks-default-ioc"; + buildConfig.src = + pkgs.runCommand "default-top" { + nativeBuildInputs = [pkgs.epnix.epics-base]; + } '' + mkdir $out + cd $out + makeBaseApp.pl -u epnix -t ioc simple + makeBaseApp.pl -u epnix -t ioc -i -a linux-x86_64 -p simple Simple + ''; + + buildConfig.attrs = { + patches = [./default-top-${releaseBranch}.patch]; + postPatch = '' + cp ${./simple.db} simpleApp/Db/simple.db + ''; + }; + + epics-base.releaseBranch = releaseBranch; + + nixos.services.ioc = { + app = "simple"; + ioc = "iocSimple"; + }; + }; +} diff --git a/ioc/tests/default-ioc/top/simpleApp/Db/simple.db b/ioc/tests/default-ioc/simple.db similarity index 100% rename from ioc/tests/default-ioc/top/simpleApp/Db/simple.db rename to ioc/tests/default-ioc/simple.db diff --git a/ioc/tests/default-ioc/top/.gitignore b/ioc/tests/default-ioc/top/.gitignore deleted file mode 100644 index 3d648caa..00000000 --- a/ioc/tests/default-ioc/top/.gitignore +++ /dev/null @@ -1,29 +0,0 @@ -# Install directories -/bin/ -/cfg/ -/db/ -/dbd/ -/html/ -/include/ -/lib/ -/templates/ - -# Local configuration files -/configure/*.local - -# iocBoot generated files -/iocBoot/*ioc*/cdCommands -/iocBoot/*ioc*/dllPath.bat -/iocBoot/*ioc*/envPaths -/iocBoot/*ioc*/relPaths.sh - -# Build directories -O.*/ - -# Common files created by other tools -/QtC-* -/.vscode/ -*.orig -*.log -.*.swp -.DS_Store diff --git a/ioc/tests/default-ioc/top/Makefile b/ioc/tests/default-ioc/top/Makefile deleted file mode 100644 index 19c9068d..00000000 --- a/ioc/tests/default-ioc/top/Makefile +++ /dev/null @@ -1,31 +0,0 @@ -# Makefile at top of application tree -TOP = . -include $(TOP)/configure/CONFIG - -# Directories to build, any order -DIRS += configure -DIRS += $(wildcard *Sup) -DIRS += $(wildcard *App) -DIRS += $(wildcard *Top) -DIRS += $(wildcard iocBoot) - -# The build order is controlled by these dependency rules: - -# All dirs except configure depend on configure -$(foreach dir, $(filter-out configure, $(DIRS)), \ - $(eval $(dir)_DEPEND_DIRS += configure)) - -# Any *App dirs depend on all *Sup dirs -$(foreach dir, $(filter %App, $(DIRS)), \ - $(eval $(dir)_DEPEND_DIRS += $(filter %Sup, $(DIRS)))) - -# Any *Top dirs depend on all *Sup and *App dirs -$(foreach dir, $(filter %Top, $(DIRS)), \ - $(eval $(dir)_DEPEND_DIRS += $(filter %Sup %App, $(DIRS)))) - -# iocBoot depends on all *App dirs -iocBoot_DEPEND_DIRS += $(filter %App,$(DIRS)) - -# Add any additional dependency rules here: - -include $(TOP)/configure/RULES_TOP diff --git a/ioc/tests/default-ioc/top/configure/CONFIG b/ioc/tests/default-ioc/top/configure/CONFIG deleted file mode 100644 index 34ace577..00000000 --- a/ioc/tests/default-ioc/top/configure/CONFIG +++ /dev/null @@ -1,45 +0,0 @@ -# CONFIG - Load build configuration data -# -# Do not make changes to this file! - -# Allow user to override where the build rules come from -RULES = $(EPICS_BASE) - -# RELEASE files point to other application tops -include $(TOP)/configure/RELEASE --include $(TOP)/configure/RELEASE.$(EPICS_HOST_ARCH).Common - -ifdef T_A - -include $(TOP)/configure/RELEASE.Common.$(T_A) - -include $(TOP)/configure/RELEASE.$(EPICS_HOST_ARCH).$(T_A) -endif - -# Check EPICS_BASE is set properly -ifneq (file,$(origin EPICS_BASE)) - $(error EPICS_BASE must be set in a configure/RELEASE file) -else - ifeq ($(wildcard $(EPICS_BASE)/configure/CONFIG_BASE),) - $(error EPICS_BASE does not point to an EPICS installation) - endif -endif - -CONFIG = $(RULES)/configure -include $(CONFIG)/CONFIG - -# Override the Base definition: -INSTALL_LOCATION = $(TOP) - -# CONFIG_SITE files contain local build configuration settings -include $(TOP)/configure/CONFIG_SITE - -# Host-arch specific settings --include $(TOP)/configure/CONFIG_SITE.$(EPICS_HOST_ARCH).Common - -ifdef T_A - # Target-arch specific settings - -include $(TOP)/configure/CONFIG_SITE.Common.$(T_A) - - # Host & target specific settings - -include $(TOP)/configure/CONFIG_SITE.$(EPICS_HOST_ARCH).$(T_A) -endif - diff --git a/ioc/tests/default-ioc/top/configure/CONFIG_SITE b/ioc/tests/default-ioc/top/configure/CONFIG_SITE deleted file mode 100644 index 212485eb..00000000 --- a/ioc/tests/default-ioc/top/configure/CONFIG_SITE +++ /dev/null @@ -1,43 +0,0 @@ -# CONFIG_SITE - -# Make any application-specific changes to the EPICS build -# configuration variables in this file. -# -# Host/target specific settings can be specified in files named -# CONFIG_SITE.$(EPICS_HOST_ARCH).Common -# CONFIG_SITE.Common.$(T_A) -# CONFIG_SITE.$(EPICS_HOST_ARCH).$(T_A) - -# CHECK_RELEASE controls the consistency checking of the support -# applications pointed to by the RELEASE* files. -# Normally CHECK_RELEASE should be set to YES. -# Set CHECK_RELEASE to NO to disable checking completely. -# Set CHECK_RELEASE to WARN to perform consistency checking but -# continue building even if conflicts are found. -CHECK_RELEASE = YES - -# Set this when you only want to compile this application -# for a subset of the cross-compiled target architectures -# that Base is built for. -#CROSS_COMPILER_TARGET_ARCHS = vxWorks-ppc32 - -# To install files into a location other than $(TOP) define -# INSTALL_LOCATION here. -#INSTALL_LOCATION= - -# Set this when the IOC and build host use different paths -# to the install location. This may be needed to boot from -# a Microsoft FTP server say, or on some NFS configurations. -#IOCS_APPL_TOP = - -# For application debugging purposes, override the HOST_OPT and/ -# or CROSS_OPT settings from base/configure/CONFIG_SITE -#HOST_OPT = NO -#CROSS_OPT = NO - -# These allow developers to override the CONFIG_SITE variable -# settings without having to modify the configure/CONFIG_SITE -# file itself. --include $(TOP)/../CONFIG_SITE.local --include $(TOP)/configure/CONFIG_SITE.local - diff --git a/ioc/tests/default-ioc/top/configure/Makefile b/ioc/tests/default-ioc/top/configure/Makefile deleted file mode 100644 index 92543094..00000000 --- a/ioc/tests/default-ioc/top/configure/Makefile +++ /dev/null @@ -1,8 +0,0 @@ -TOP=.. - -include $(TOP)/configure/CONFIG - -TARGETS = $(CONFIG_TARGETS) -CONFIGS += $(subst ../,,$(wildcard $(CONFIG_INSTALLS))) - -include $(TOP)/configure/RULES diff --git a/ioc/tests/default-ioc/top/configure/RELEASE b/ioc/tests/default-ioc/top/configure/RELEASE deleted file mode 100644 index bbcffd23..00000000 --- a/ioc/tests/default-ioc/top/configure/RELEASE +++ /dev/null @@ -1,42 +0,0 @@ -# RELEASE - Location of external support modules -# -# IF YOU CHANGE ANY PATHS in this file or make API changes to -# any modules it refers to, you should do a "make rebuild" in -# this application's top level directory. -# -# The EPICS build process does not check dependencies against -# any files from outside the application, so it is safest to -# rebuild it completely if any modules it depends on change. -# -# Host- or target-specific settings can be given in files named -# RELEASE.$(EPICS_HOST_ARCH).Common -# RELEASE.Common.$(T_A) -# RELEASE.$(EPICS_HOST_ARCH).$(T_A) -# -# This file is parsed by both GNUmake and an EPICS Perl script, -# so it may ONLY contain definititions of paths to other support -# modules, variable definitions that are used in module paths, -# and include statements that pull in other RELEASE files. -# Variables may be used before their values have been set. -# Build variables that are NOT used in paths should be set in -# the CONFIG_SITE file. - -# Variables and paths to dependent modules: -#MODULES = /path/to/modules -#MYMODULE = $(MODULES)/my-module - -# If using the sequencer, point SNCSEQ at its top directory: -#SNCSEQ = $(MODULES)/seq-ver - -# EPICS_BASE should appear last so earlier modules can override stuff: -EPICS_BASE = /nix/store/gq8ysfw2yqwij1wd64vcc0nwy8p67vzx-epics-base-7.0.7 - -# Set RULES here if you want to use build rules from somewhere -# other than EPICS_BASE: -#RULES = $(MODULES)/build-rules - -# These lines allow developers to override these RELEASE settings -# without having to modify this file directly. --include $(TOP)/../RELEASE.local --include $(TOP)/../RELEASE.$(EPICS_HOST_ARCH).local --include $(TOP)/configure/RELEASE.local diff --git a/ioc/tests/default-ioc/top/configure/RULES b/ioc/tests/default-ioc/top/configure/RULES deleted file mode 100644 index 6d56e14e..00000000 --- a/ioc/tests/default-ioc/top/configure/RULES +++ /dev/null @@ -1,6 +0,0 @@ -# RULES - -include $(CONFIG)/RULES - -# Library should be rebuilt because LIBOBJS may have changed. -$(LIBNAME): ../Makefile diff --git a/ioc/tests/default-ioc/top/configure/RULES.ioc b/ioc/tests/default-ioc/top/configure/RULES.ioc deleted file mode 100644 index 901987c6..00000000 --- a/ioc/tests/default-ioc/top/configure/RULES.ioc +++ /dev/null @@ -1,2 +0,0 @@ -#RULES.ioc -include $(CONFIG)/RULES.ioc diff --git a/ioc/tests/default-ioc/top/configure/RULES_DIRS b/ioc/tests/default-ioc/top/configure/RULES_DIRS deleted file mode 100644 index 3ba269dc..00000000 --- a/ioc/tests/default-ioc/top/configure/RULES_DIRS +++ /dev/null @@ -1,2 +0,0 @@ -#RULES_DIRS -include $(CONFIG)/RULES_DIRS diff --git a/ioc/tests/default-ioc/top/configure/RULES_TOP b/ioc/tests/default-ioc/top/configure/RULES_TOP deleted file mode 100644 index d09d668d..00000000 --- a/ioc/tests/default-ioc/top/configure/RULES_TOP +++ /dev/null @@ -1,3 +0,0 @@ -#RULES_TOP -include $(CONFIG)/RULES_TOP - diff --git a/ioc/tests/default-ioc/top/epnix.nix b/ioc/tests/default-ioc/top/epnix.nix deleted file mode 100644 index 582e8ba8..00000000 --- a/ioc/tests/default-ioc/top/epnix.nix +++ /dev/null @@ -1,13 +0,0 @@ -releaseBranch: _: { - epnix = { - meta.name = "checks-default-ioc"; - buildConfig.src = ./.; - - epics-base.releaseBranch = releaseBranch; - - nixos.services.ioc = { - app = "simple"; - ioc = "iocsimple"; - }; - }; -} diff --git a/ioc/tests/default-ioc/top/iocBoot/Makefile b/ioc/tests/default-ioc/top/iocBoot/Makefile deleted file mode 100644 index 91e47d0b..00000000 --- a/ioc/tests/default-ioc/top/iocBoot/Makefile +++ /dev/null @@ -1,6 +0,0 @@ -TOP = .. -include $(TOP)/configure/CONFIG -DIRS += $(wildcard *ioc*) -DIRS += $(wildcard as*) -include $(CONFIG)/RULES_DIRS - diff --git a/ioc/tests/default-ioc/top/iocBoot/iocsimple/Makefile b/ioc/tests/default-ioc/top/iocBoot/iocsimple/Makefile deleted file mode 100644 index e1b9aa4a..00000000 --- a/ioc/tests/default-ioc/top/iocBoot/iocsimple/Makefile +++ /dev/null @@ -1,5 +0,0 @@ -TOP = ../.. -include $(TOP)/configure/CONFIG -ARCH = $(EPICS_HOST_ARCH) -TARGETS = envPaths -include $(TOP)/configure/RULES.ioc diff --git a/ioc/tests/default-ioc/top/iocBoot/iocsimple/st.cmd b/ioc/tests/default-ioc/top/iocBoot/iocsimple/st.cmd deleted file mode 100644 index 925f14f5..00000000 --- a/ioc/tests/default-ioc/top/iocBoot/iocsimple/st.cmd +++ /dev/null @@ -1,10 +0,0 @@ -#!../../bin/linux-x86_64/simple - -< envPaths - -dbLoadDatabase "../../dbd/simple.dbd" -simple_registerRecordDeviceDriver(pdbbase) - -dbLoadRecords("../../db/simple.db") - -iocInit() diff --git a/ioc/tests/default-ioc/top/simpleApp/Db/Makefile b/ioc/tests/default-ioc/top/simpleApp/Db/Makefile deleted file mode 100644 index 3717f9ef..00000000 --- a/ioc/tests/default-ioc/top/simpleApp/Db/Makefile +++ /dev/null @@ -1,11 +0,0 @@ -TOP=../.. -include $(TOP)/configure/CONFIG -#---------------------------------------- -# ADD MACRO DEFINITIONS AFTER THIS LINE - -DB += simple.db - -include $(TOP)/configure/RULES -#---------------------------------------- -# ADD RULES AFTER THIS LINE - diff --git a/ioc/tests/default-ioc/top/simpleApp/Makefile b/ioc/tests/default-ioc/top/simpleApp/Makefile deleted file mode 100644 index 60ab8ae8..00000000 --- a/ioc/tests/default-ioc/top/simpleApp/Makefile +++ /dev/null @@ -1,14 +0,0 @@ -# Makefile at top of application tree -TOP = .. -include $(TOP)/configure/CONFIG - -# Directories to be built, in any order. -# You can replace these wildcards with an explicit list -DIRS += $(wildcard src* *Src*) -DIRS += $(wildcard db* *Db*) - -# If the build order matters, add dependency rules like this, -# which specifies that xxxSrc must be built after src: -#xxxSrc_DEPEND_DIRS += src - -include $(TOP)/configure/RULES_DIRS diff --git a/ioc/tests/default-ioc/top/simpleApp/src/Makefile b/ioc/tests/default-ioc/top/simpleApp/src/Makefile deleted file mode 100644 index 483225ad..00000000 --- a/ioc/tests/default-ioc/top/simpleApp/src/Makefile +++ /dev/null @@ -1,29 +0,0 @@ -TOP=../.. - -include $(TOP)/configure/CONFIG -#---------------------------------------- -# ADD MACRO DEFINITIONS AFTER THIS LINE -#============================= - -PROD_IOC = simple -# simple.dbd will be created and installed -DBD += simple.dbd - -# simple.dbd will be made up from these files: -simple_DBD += base.dbd - -# simple_registerRecordDeviceDriver.cpp derives from simple.dbd -simple_SRCS += simple_registerRecordDeviceDriver.cpp - -# Build the main IOC entry point on workstation OSs. -simple_SRCS_DEFAULT += simpleMain.cpp - -# Finally link to the EPICS Base libraries -simple_LIBS += $(EPICS_BASE_IOC_LIBS) - -#=========================== - -include $(TOP)/configure/RULES -#---------------------------------------- -# ADD RULES AFTER THIS LINE - diff --git a/ioc/tests/default-ioc/top/simpleApp/src/simpleMain.cpp b/ioc/tests/default-ioc/top/simpleApp/src/simpleMain.cpp deleted file mode 100644 index e4e5e3b2..00000000 --- a/ioc/tests/default-ioc/top/simpleApp/src/simpleMain.cpp +++ /dev/null @@ -1,23 +0,0 @@ -/* simpleMain.cpp */ -/* Author: Marty Kraimer Date: 17MAR2000 */ - -#include -#include -#include -#include -#include - -#include "epicsExit.h" -#include "epicsThread.h" -#include "iocsh.h" - -int main(int argc,char *argv[]) -{ - if(argc>=2) { - iocsh(argv[1]); - epicsThreadSleep(.2); - } - iocsh(NULL); - epicsExit(0); - return(0); -}