EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  <20162017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  <20162017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: Philosophy regarding use of open source libraries for EPICS
From: "Konrad, Martin" <[email protected]>
To: Bruce Hill <[email protected]>, "[email protected]" <[email protected]>
Date: Wed, 16 Nov 2016 23:59:12 +0000
Hi Bruce,
> Relying on yum repo installation of third party packages wasn't
> working as the available package versions were often way out of
> date.
I guess that's the price you pay for sticking to the same RHEL version
for 10 years ;-) We are planning to upgrade our OS more frequently
(whenever a new Debian version is released).

> To handle this, we created a python based system we call package
> manager.    It consists of python scripts that know how to build and
> install typical c/c++ unix packages from tarballs using ./configure,
> make, make install, and also how to build and install python packages
> using setup.py build and setup.py install.    For each package type,
> there's also a dependency file to specify version specific package
> dependencies, and a short python file to handle quirks of each 
> package type.    For an easy package the new python code is about 10
> lines of boilerplate, but we've also handled builds which use qmake,
> autogen, cmake, etc.    We can also customize configure arguments,
> build arguments, add missing headers, customize installs etc.
If you go through all that pain you can also package your software into
RPMs. We are building Debian packages for almost everything. The nice
thing about this is that we can leverage the Debian community's big pool
of packaging/build tools. Have a look at [1] for an example of the kind
of meta data we add to turn something into a proper Debian package. [2]
is an example for the build rules that are automatically generated by
the Debian tools (we usually don't need to touch them).

The best thing about all this that the packaging effort for a lot of
common packages is shared between labs [3].

-Martin

[1] https://github.com/epicsdeb/ether-ip/blob/master/debian/control
[2] https://github.com/epicsdeb/ether-ip/blob/master/debian/rules
[3] https://github.com/epicsdeb

-- 
Martin Konrad
Control System Engineer
Facility for Rare Isotope Beams
Michigan State University
640 South Shaw Lane
East Lansing, MI 48824-1321, USA
Tel. 517-908-7253
Email: [email protected]


Replies:
Re: Philosophy regarding use of open source libraries for EPICS Bruce Hill
Re: Philosophy regarding use of open source libraries for EPICS Benjamin Franksen
References:
Philosophy regarding use of open source libraries for EPICS Rod Nussbaumer

Navigate by Date:
Prev: Re: Philosophy regarding use of open source libraries for EPICS Konrad, Martin
Next: Re: Philosophy regarding use of open source libraries for EPICS Bruce Hill
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  <20162017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: Philosophy regarding use of open source libraries for EPICS Konrad, Martin
Next: Re: Philosophy regarding use of open source libraries for EPICS Bruce Hill
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  <20162017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 25 Nov 2016 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·