added wrapper around tmpfile so that we can have a windows specific

implementation
This commit is contained in:
Jeff Hill
2003-07-30 19:11:31 +00:00
parent c1f1511fac
commit e69481d196

View File

@@ -18,6 +18,23 @@
<h2>Changes since 3.14.2</h2>
</center>
<h4>Temporary Files on Windows</h4>
<p>The tmpfile() function on windows requires that all temporary files be
stored in the root folder. The antelope (yacc) tool in base was calling
tmpfile() and this was causing problems at sites where win32 systems have
remmotely mounted secure file systems. A wrapper function called "FILE *
epicsTempFile()" that creates a temporary file on WIN32 with a name epicsNNN
using one of the following paths was installed into libCom. It searches
starting with (1) below and stops when it finds a specified path that exists.
On POSIX systems, and systems that default to POSIX behavior, epicsTempFile()
simply calls tmpfile(). </p>
<ol>
<li>where the TMP environment variable specifies</li>
<li>in c:\tmp</li>
<li>in the current working directory</li>
</ol>
<h4>envPaths file</h4>
<p>For operating systems other than vxWorks, there is now a target file
@@ -614,70 +631,70 @@ applications.
<blockquote>
DBDEXPAND = &lt;name&gt;Include.dbd  </blockquote>
DBDEXPAND = &lt;name&gt;Include.dbd &nbsp;</blockquote>
NOTE: If any of your *App/*Db/Makefiles contain "DBDNAME =" lines you
should make these same changes in that *Db dirctory.</li>
<li>In all *App/src/Makefile Makefiles change
<blockquote>
RECTYPES=&lt;name&gt;.h  </blockquote>
RECTYPES=&lt;name&gt;.h &nbsp;</blockquote>
to
<blockquote>
DBDINC+=&lt;name&gt;  </blockquote>
DBDINC+=&lt;name&gt; &nbsp;</blockquote>
change
<blockquote>
MENUS=&lt;name&gt;.h  </blockquote>
MENUS=&lt;name&gt;.h &nbsp;</blockquote>
to
<blockquote>
DBDINC+=&lt;name&gt;  </blockquote>
DBDINC+=&lt;name&gt; &nbsp;</blockquote>
change
<blockquote>
BPTS  </blockquote>
BPTS &nbsp;</blockquote>
to
<blockquote>
DBD  </blockquote>
DBD &nbsp;</blockquote>
change
<blockquote>
INSTALLDB  </blockquote>
INSTALLDB &nbsp;</blockquote>
to
<blockquote>
DB  </blockquote>
DB &nbsp;</blockquote>
change
<blockquote>
DBDINSTALL  </blockquote>
DBDINSTALL &nbsp;</blockquote>
to
<blockquote>
DBD  </blockquote>
DBD &nbsp;</blockquote>
</li>
<li>In all example *App/src/Makefile files change
<blockquote>
example_SRCS_DEFAULT += registerRecordDeviceDriver.c  </blockquote>
example_SRCS_DEFAULT += registerRecordDeviceDriver.c &nbsp;</blockquote>
to
<blockquote>
example_SRCS_DEFAULT += &lt;name&gt;_registerRecordDeviceDriver.cpp
 </blockquote>
&nbsp;</blockquote>
where &lt;name&gt; is the base name of a &lt;name&gt;.dbd file which was
created from a &lt;name&gt;Include.dbd file and which will be loaded in a
st.cmd or stcmd.host script (e.g. example).</li>
<li>In ./iocBoot/ioc&lt;name&gt;/st.cmd files change
<blockquote>
dbLoadDatabase("dbd/exampleApp.dbd")  </blockquote>
dbLoadDatabase("dbd/exampleApp.dbd") &nbsp;</blockquote>
to
<blockquote>
dbLoadDatabase("dbd/example.dbd")  </blockquote>
dbLoadDatabase("dbd/example.dbd") &nbsp;</blockquote>
</li>
<li>In &lt;top&gt;/iocBoot/ioc&lt;name&gt;/stcmd.host files change
@@ -693,8 +710,8 @@ applications.
<h3>EPICS_HOST_ARCH changes</h3>
<p>GNU compiler builds are now determined by the value of EPICS_HOST_ARCH and
are no longer specified in CONFIG_SITE.  All references to the ANSI (ACC/GCC)
and CPLUSPLUS (CCC/G++) macros have been removed.</p>
are no longer specified in CONFIG_SITE.&nbsp; All references to the ANSI
(ACC/GCC) and CPLUSPLUS (CCC/G++) macros have been removed.</p>
<h3>libCom</h3>