diff options
Diffstat (limited to 'src/usr.bin/lndir/lndir.1')
-rw-r--r-- | src/usr.bin/lndir/lndir.1 | 206 |
1 files changed, 206 insertions, 0 deletions
diff --git a/src/usr.bin/lndir/lndir.1 b/src/usr.bin/lndir/lndir.1 new file mode 100644 index 0000000..70c7afb --- /dev/null +++ b/src/usr.bin/lndir/lndir.1 @@ -0,0 +1,206 @@ +.\" $OpenBSD: lndir.1,v 1.24 2013/08/14 06:32:30 jmc Exp $ +.\" +.\" Copyright (c) 1997, Jason Downs. All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS +.\" OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +.\" WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +.\" DISCLAIMED. IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, +.\" INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +.\" SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +.\" CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" $XConsortium: lndir.man /main/9 1995/12/15 14:00:35 gildea $ +.\" +.\" Copyright (c) 1993, 1994 X Consortium +.\" +.\" Permission is hereby granted, free of charge, to any person obtaining +.\" a copy of this software and associated documentation files (the +.\" "Software"), to deal in the Software without restriction, including +.\" without limitation the rights to use, copy, modify, merge, publish, +.\" distribute, sublicense, and/or sell copies of the Software, and to +.\" permit persons to whom the Software is furnished to do so, subject to +.\" the following conditions: +.\" +.\" The above copyright notice and this permission notice shall be +.\" included in all copies or substantial portions of the Software. +.\" +.\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +.\" EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +.\" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +.\" IN NO EVENT SHALL THE X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR +.\" OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +.\" ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +.\" OTHER DEALINGS IN THE SOFTWARE. +.\" +.\" Except as contained in this notice, the name of the X Consortium shall +.\" not be used in advertising or otherwise to promote the sale, use or +.\" other dealings in this Software without prior written authorization +.\" from the X Consortium. +.\" +.Dd $Mdocdate: August 14 2013 $ +.Dt LNDIR 1 +.Os +.Sh NAME +.Nm lndir +.Nd create a shadow directory of symbolic links to another directory tree +.Sh SYNOPSIS +.Nm lndir +.Op Fl is +.Op Fl e Ar exceptfile +.Ar fromdir +.Op Ar todir +.Sh DESCRIPTION +The +.Nm +program makes a shadow copy +.Ar todir +of a directory tree +.Ar fromdir , +except that the shadow is not +populated with real files but instead with symbolic links pointing at +the real files in the +.Ar fromdir +directory tree. +This is usually useful for maintaining source code for +different machine architectures. +You create a shadow directory +containing links to the real source, which you will have usually +mounted from a remote machine. +You can build in the shadow tree, and +the object files will be in the shadow directory, while the +source files in the shadow directory are just symlinks to the real +files. +.Pp +This scheme has the advantage that if you update the source, you need not +propagate the change to the other architectures by hand, since all +source in all shadow directories are symlinks to the real thing: +just change working directory to the shadow directory and recompile away. +.Pp +The +.Ar todir +argument is optional and defaults to the current directory. +The +.Ar fromdir +argument may be relative (e.g.\& +.Pa ../src ) +and is relative to +.Ar todir +(not the current directory). +.Pp +If you add files, simply run +.Nm +again. +New files will be silently added. +Old files will be +checked that they have the correct link. +.Pp +Deleting files is a more painful problem; the symlinks will +just point into never never land. +.Pp +The options are as follows: +.Bl -tag -width Ds +.It Fl e Ar exceptfile +Add the specified file to the list of excluded files/directories. +This is effective in all directories searched by +.Nm . +This option may be specified as many times as needed. +.Pp +The following types of files are excluded by default: +.Pp +.Bl -dash -offset indent -compact +.It +files whose names end in +.Sq ~ +.It +files whose names start with +.Sq .# +.It +RCS, SCCS, CVS, and CVS.adm directories +.El +.It Fl i +If a file in +.Ar fromdir +is a symbolic link, +.Nm +will make the same link in +.Ar todir +rather than making a link back to the (symbolic link) entry in +.Ar fromdir . +The +.Fl i +flag changes that behavior, +i.e. it causes the program to not treat symbolic links in +.Ar fromdir +specially. +The link created in +.Ar todir +will point back to the corresponding (symbolic link) file in +.Ar fromdir . +If the link is to a directory, this is almost certainly the wrong thing. +.Pp +This option exists mostly to emulate the behavior the C version of +.Nm +had in X11R6. +Its use is not recommended. +.It Fl s +Suppresses status messages normally output as +.Nm +descends into each subdirectory. +.El +.Sh DIAGNOSTICS +The program displays the name of each subdirectory it enters, followed +by a colon. +The +.Fl s +option suppresses these messages. +.Pp +A warning message is displayed if the symbolic link cannot be created. +The usual problem is that a regular file of the same name already +exists. +.Pp +If the link already exists but doesn't point to the correct file, the +program prints the link name and the location where it does point. +.Sh SEE ALSO +.Xr find 1 , +.Xr ln 1 , +.Xr patch 1 +.Sh HISTORY +.Nm +was first distributed as part of X11. +.Pp +This version first appeared in +.Ox 1.2 . +.Sh BUGS +The +.Xr patch 1 +program gets upset if it cannot change the files. +You should never run +.Xr patch 1 +from a shadow directory anyway. +.Pp +To clear out all files before you can relink +(if +.Ar fromdir +moved, for instance): +.Bd -literal -offset indent +$ find todir -type l -print0 | xargs -0 -r rm +.Ed +.Pp +Find all files that are not directories: +.Bd -literal -offset indent +$ find . ! -type d -print0 +.Ed |