Hi Ronaldo,
On 10/28/2015 04:48 AM, [email protected] wrote:
> I am writing because while building an IOC for the PerkinElmer area detector module 2-3, I found that
> msi on windows expects ':' as path separator. This behaviour does not allow to
> specify paths for "include" that reside on a different windows drive.
>
> Has anyone else encountered this problem while using msi on windows?
This has already been fixed in the version of msi that comes with 3.15.
> My proposal introduces a "-w" switch. The changes are pasted below (changes made against msi 1-5).
Since the path separator is OS-specific, there is no need for a
command-line switch to select it. Base defines a C macro via the
osiFileName.h header that gives the correct separator character for each
OS, but unfortunately versions of msi prior its inclusion in Base-3.15
weren't using it.
I'm attaching the change (against msi 1-7) for that fix; I'm currently
undecided whether to release another version of the stand-alone msi
extension that includes this.
- Andrew
--
Light thinks it travels faster than anything but it is wrong.
No matter how fast light travels, it finds the darkness has
always got there first, and is waiting for it.
-- Terry Pratchett, Reaper Man
Index: msi.c
===================================================================
--- msi.c 13 May 2013 17:00:43 -0000 1.19
+++ msi.c 28 Oct 2015 15:43:44 -0000
@@ -26,6 +26,7 @@
#include <macLib.h>
#include <ellLib.h>
#include <errlog.h>
+#include <osiFileName.h>
#define MAX_BUFFER_SIZE 4096
@@ -303,16 +304,17 @@
const char *pdir;
int len;
int emptyName;
+ const char sep = *OSI_PATH_LIST_SEPARATOR;
pdir = path;
/*an empty name at beginning, middle, or end means current directory*/
while(pdir && *pdir) {
- emptyName = ((*pdir == ':') ? 1 : 0);
+ emptyName = (*pdir == sep);
if(emptyName) ++pdir;
ppathNode = (pathNode *)calloc(1,sizeof(pathNode));
ellAdd(ppathList,&ppathNode->node);
if(!emptyName) {
- pcolon = strchr(pdir,':');
+ pcolon = strchr(pdir, sep);
len = (pcolon ? (pcolon - pdir) : strlen(pdir));
if(len>0) {
ppathNode->directory = (char *)calloc(len+1,sizeof(char));
- References:
- msi for windows IOC build ronaldo.mercado
- Navigate by Date:
- Prev:
Using V4 pvCommonCPP module with external boost library alan.greer
- Next:
RE: Subject: RE: To read single element from waveform record Gofron, Kazimierz
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
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:
msi for windows IOC build ronaldo.mercado
- Next:
Using V4 pvCommonCPP module with external boost library alan.greer
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
<2015>
2016
2017
2018
2019
2020
2021
2022
2023
2024
|