EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  <20182019  2020  2021  2022  2023  2024  Index 2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  <20182019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: random half finished features
From: Michael Davidsaver <[email protected]>
To: EPICS core-talk <[email protected]>
Date: Tue, 15 May 2018 10:22:30 -0700
In going through what we didn't have time to discuss during the developer meeting last
week I find a couple of projects which I've take far enough to find useful, but not
far enough to consider merging (and have no immediate plans to do so).  I mention these
to see if anyone has interest in continuing, or sponsoring, the work.


= Relocatable builds

An experiment in building binaries (w/ shared libraries) which can be run from
a different location than built.  This involves avoiding compiled in absolute paths.
For an IOC there are two places: -rpath and softIoc.dbd.  I have this working on Linux
transparently, including support modules, but not unit tests (aka TESTPROD).

The remaining work is support for TESTPROD only LDFLAGS, and possibly finding a recipe for OSX.
Also translating a python script into perl...

For those interested in the details.  This involves the ELF specific "-rpath $ORIGIN/...",
(and maybe Mach-O "-install_name @loader_path/..."), as well as OS specific mechanisms to find
the absolute path of the executable which launched the running process.


These are some of the many patches living on https://github.com/mdavidsaver/epics-base/tree/integration


= Joinable threads

I've long wished that epicsThread could be joined at the OS level.  The practical
benefit of this for me is fewer false positives from valgrind when testing the PVA modules.

I have this working for Linux and windows so that 'class epicsThread' will automatically
join when stopped.  The remaining work is to support RTEMS and vxWorks.

https://github.com/mdavidsaver/epics-base/tree/thread-join

(note that this branch sits on top of some unrelated RTEMS+qemu testing changes)

Navigate by Date:
Prev: Re: Size encoding Ralph Lange
Next: Re: Size encoding Benjamin Franksen
Index: 2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  <20182019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: Size encoding Michael Davidsaver
Next: Build failed in Jenkins: epics-base-3.14 #287 APS Jenkins
Index: 2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  <20182019  2020  2021  2022  2023  2024 
ANJ, 18 May 2018 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·