RCS and SAMBA

Eliot Muir eliot.muir@interfaceware.com
Sun Nov 14 11:26:00 GMT 1999


Just thought I'd follow up to say how this went so the
answer is in the archives for anyone coming across
this issue in the future.

I made various changes to the configuration including
adding: 

   create mode = 0755
   map system = yes

which according to some of the documentation is
supposed to enable symbolic links.  But it didn't
make any difference.

My original configuration was checking out on
to a local NTFS and a FAT partition on my local
NT machines hard drive.

I then switched to using the SAMBA partition
to check out onto.

Now RCS for WIN32 has a funny little extra feature of
"simulated" symbolic links.  Normally when using RCS
under Unix the custom is to make a symbolic link from
the directory when the archives files are kept to RCS
in your working directory.
i.e.

ln -s /home/source/archive/chameleon/SVC RCS

Since WIN32 doesn't support symbolic links the writers
of RCS added a feature that if you can put a file called
"rcs" in your checkout directory and put the pathway
to the working directory that RCS will use this instead
of the symbolic link.

Even on the SAMBA share, using this feature results
in the following sequence.

Z:\SVC>co filelist
//testbox/source/archive/chameleon/SVC/filelist  -->  filelist
revision 1.9
done

Z:\SVC>co -l filelist
co: symbolic link to non RCS file `//testbox/source/archive/chameleon/SVC/fist'
co: //testbox/source/archive/chameleon/SVC/filelist: Invalid argument

i.e. the same as on the local hard drive.

But when I deleted the rcs file and then on the Unix box created the
symbolic link - it worked!

For an additional experiment I tried using the cygwin to create a symbolic
link from my NT box:

Z:\SVC>ln -s //testbox/source/archive/chameleon/SVC RCS

Z:\SVC>co -l filelist
co: !<symlink>//testbox/source/archive/chameleon/SVC/filelist: Not a directory

Z:\SVC>co filelist
co: !<symlink>//testbox/source/archive/chameleon/SVC/filelist: Not a directory

But as you can see this failed.

So there is a workaround - it's possible for me to lock revisions
so long as one manipulate them on a SAMBA drive that have
the appropriate symbolic links setup.

But it appears that some alteration is needed to the WIN32 form
of RCS to make it more compatible with SAMBA.

Cheers,
Eliot

--
Eliot Muir, Technical Director                 iNTERFACEWARE
mailto:eliot.muir@interfaceware.com  
Voice 64-21-333068      http://www.interfaceware.com

Makers of iNTERFACEWARE Chameleon 
   "Program to the iNTERFACE not the implementation"

-----Original Message-----
From:	David J. Fiddes [SMTP:D.J@fiddes.surfaid.org]
Sent:	Sunday, November 14, 1999 5:59 AM
To:	Cygwin
Subject:	Sys V IPC and Cygwin

Hi,

I'm trying to get the "unix" simulator for RTEMS (a Real Time OS) running
under Cygwin. The unix simulator allows the user to run RTEMS programs as
normal unix tasks. Unfortunately, to achieve this it uses Sys V semaphores,
shared memory and messages to simulate hardware interrupts and the like...
The configure for RTEMS chokes when looking for the header files...

I don't really know very much about Sys V IPC. Is it possible to make this
work under Cygwin and at what level (e.g. cygwin1.dll or a library or ???)?

The type of program that configure is trying to build looks like:

#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/sem.h>
#if !HAS_UNION_SEMUN
  union semun {
    int val;
    struct semid_ds *buf;
    ushort *array;
  } ;
#endif
int main () {
  union semun arg ;

  int id=semget(IPC_PRIVATE,1,IPC_CREAT|0400);
  if (id == -1)
    exit(1);
  arg.val = 0; /* avoid implicit type cast to union */
  if (semctl(id, 0, IPC_RMID, arg) == -1)
    exit(1);
  exit(0);
}

many thanks,
Dave


--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com



--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com



More information about the Cygwin mailing list