On 8/11/20 6:18 AM, Mark Rivers via Core-talk wrote:
> Hi Andrew,
>
>
> I am trying to figure out the best way to clean up my code (asyn, areaDetector, etc.) to handle the __declspec DLL_EXPORT/IMPORT stuff.
>
>
> I posted a comment to this thread in ADCore about it just now:
>
> https://github.com/areaDetector/ADCore/issues/455#issuecomment-671933786
>
>
> It looks like EPICS base 7.0.4 has 2 ways of doing it, for example using LIBCOM_API/LIBCA_API, or the more traditional epicsShareFunc and epicsExportSharedSymbols (e.g. in pvAccess).
>
>
> I did a "git grep LIBCOM_API" and I cannot actually figure out where LIBCOM_API is defined and how that mechanism works. Can you explain?
>
>
> Does the LIBCA_API mechanism rely on anything in base 7, or can it be used with older versions of base?
Since the _API macros are my initiative, I'll answer this one.
For a support module, you might be better to start looking at
the pva2pva module, which is where I tried the idea before
changing Base.
https://github.com/epics-base/pva2pva/blob/master/pdbApp/pv/qsrv.h#L21-L37
With Base 7.0.4, this sort of header is generated by makeAPIheader.pl
to avoid repetition. This did involve some Makefile changes to account
for dependency issues with use of a generated header by basically every
object file.
https://github.com/epics-base/epics-base/blob/7.0/src/tools/makeAPIheader.pl
- Replies:
- RE: epicsExportShared symbols Mark Rivers via Core-talk
- RE: epicsExportShared symbols Mark Rivers via Core-talk
- References:
- epicsExportShared symbols Mark Rivers via Core-talk
- Navigate by Date:
- Prev:
epicsExportShared symbols Mark Rivers via Core-talk
- Next:
Re: AW: Crash in EPICS 7 at iocInit Michael Davidsaver via Core-talk
- Index:
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
<2020>
2021
2022
2023
2024
- Navigate by Thread:
- Prev:
epicsExportShared symbols Mark Rivers via Core-talk
- Next:
RE: epicsExportShared symbols Mark Rivers via Core-talk
- Index:
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
<2020>
2021
2022
2023
2024
|