From 9242561f9f2077eede8b6b80f36d7827a127bf24 Mon Sep 17 00:00:00 2001 From: "Janet B. Anderson" Date: Thu, 3 Apr 2003 23:30:48 +0000 Subject: [PATCH] Updated for R3.14.2 --- documentation/ConvertingR3.13AppsToR3.14.html | 61 +++++++++---------- 1 file changed, 30 insertions(+), 31 deletions(-) diff --git a/documentation/ConvertingR3.13AppsToR3.14.html b/documentation/ConvertingR3.13AppsToR3.14.html index 744ad6ef2..e035943ad 100644 --- a/documentation/ConvertingR3.13AppsToR3.14.html +++ b/documentation/ConvertingR3.13AppsToR3.14.html @@ -10,12 +10,12 @@
-

Converting an EPICS R3.13 application to R3.14.1

+

Converting an EPICS R3.13 application to R3.14.2


This document describes how to convert a R3.13 vxWorks application so that it -builds with release R3.14.1.  It describes procedures such that:

+builds with release R3.14.2.  It describes procedures such that:

@@ -31,10 +31,11 @@ builds with release R3.14.1. remove all files created by earlier builds.

Create a new R3.14 application

+

We will remove junkApp later.

mkdir <top>
 cd <top>
 <full path to 3.14 base>/bin/<host_arch>/makeBaseApp.pl -t example junk
-/bin/rm -fr junkApp
+

Copy all *App and iocBoot directories and files to the new <top> directory

@@ -49,7 +50,7 @@ If sequence programs (*.st or *.stt files) exist in your application, add the SNCSEQ location definition for the R3.14 seq external module

SNCSEQ =<full path to seq module top>

-The R3.14 seq module must exist and be built with EPICS base R3.14.1 +The R3.14 seq module must exist and be built with EPICS base R3.14.2

Modify the Makefiles in <top>/*App directories.

@@ -82,9 +83,12 @@ $(TOP)/configure/RULES"

This is the hardest step. The definitions in Makefile.Host and Makefile.Vx must be manually converted to the new configure definitions.

-

First replace Makefile with a template Makefile from base.

+

First replace Makefile with the Makefile from junkApp/src.

rm Makefile
-cp <base>/templates/makeBaseApp/top/exampleApp/src/Makefile .
+cp ../../junkApp/src/Makefile . + +

We can remove the junkApp now.

+
/bin/rm -fr ../../junkApp

This new Make file has comments explaining how to build the various host and ioc products. Lets consider some examples

@@ -93,12 +97,15 @@ and ioc products. Lets consider some examples

Makefile.Host contains definitions like:

PROD += caExample
 caExample_SRCS += caExample.c
+PROD_LIBS +=  ca Db Com
+ca_DIR  = $(EPICS_BASE_LIB)
+Db_DIR  = $(EPICS_BASE_LIB)
+Com_DIR = $(EPICS_BASE_LIB)
       

In Makefile these are:

PROD_HOST += caExample
 caExample_SRCS += caExample.c
-caExample_LIBS += ca
-caExample_LIBS += Com
+caExample_LIBS += $(EPICS_BASE_HOST_LIBS)
       
  • Record Support - generate xxxRecord.h file @@ -135,32 +142,24 @@ LIBNAME = exampleLib INSTALLS += iocCore seq

    In Makefile these become:

    -
    PROD_IOC_vxWorks = example
    -example_SRCS += xxxRecord.c
    -example_SRCS += devXxxSoft.c
    -example_SRSC += sncExample.stt
    +
    +LIBRARY_vxWorks += exampleIoc
    +exampleIoc_SRCS += xxxRecord.c
    +exampleIoc_SRCS += devXxxSoft.c
    +exampleIoc_LIBS += $(EPICS_BASE_IOC_LIBS)
    +
    +PROD_IOC_vxWorks = example
    +example_SRCS += sncExample.stt
    +example_LIBS += exampleIoc
    +example_LIBS += seq pv
    +example_LIBS += $(EPICS_BASE_IOC_LIBS)
    +
    +# example_registerRecordDeviceDriver.cpp will be created from example.dbd
     example_SRCS += example_registerRecordDeviceDriver.cpp
    +
    +#The following adds support from base/src/vxWorks
     example_OBJS_vxWorks += $(EPICS_BASE_BIN)/vxComLibrary
     
    -#The following are for sequence programs
    -example_LIBS += seq
    -example_LIBS += pv
    -seq_DIR = $(SNCSEQ_LIB)
    -pv_DIR = $(SNCSEQ_LIB)
    -
    -example_LIBS += recIoc
    -example_LIBS += softDevIoc
    -example_LIBS += testDevIoc
    -example_LIBS += iocsh
    -example_LIBS += miscIoc
    -example_LIBS += rsrvIoc
    -example_LIBS += dbtoolsIoc
    -example_LIBS += asIoc
    -example_LIBS += dbIoc
    -example_LIBS += registryIoc
    -example_LIBS += dbStaticIoc
    -example_LIBS += ca
    -example_LIBS += Com