File: exists.so

package info (click to toggle)
cook 2.5-1
  • links: PTS
  • area: main
  • in suites: slink
  • size: 5,860 kB
  • ctags: 3,247
  • sloc: ansic: 41,260; sh: 10,022; yacc: 3,397; makefile: 3,244; awk: 136
file content (57 lines) | stat: -rw-r--r-- 1,977 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
.\"
.\"	cook - file construction tool
.\"	Copyright (C) 1990, 1991, 1992, 1993, 1994, 1997, 1998 Peter Miller;
.\"	All rights reserved.
.\"
.\"	This program is free software; you can redistribute it and/or modify
.\"	it under the terms of the GNU General Public License as published by
.\"	the Free Software Foundation; either version 2 of the License, or
.\"	(at your option) any later version.
.\"
.\"	This program is distributed in the hope that it will be useful,
.\"	but WITHOUT ANY WARRANTY; without even the implied warranty of
.\"	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
.\"	GNU General Public License for more details.
.\"
.\"	You should have received a copy of the GNU General Public License
.\"	along with this program; if not, write to the Free Software
.\"	Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, USA.
.\"
.\" MANIFEST: User Guide, Built-In Functions, Exists
.\"
.H 2 "exists"
This function requires one argument,
being the name of a file to test for existence.
The resulting word list is "" (false) if the file does not exist,
and "1" (true) if the file does exist.
.H 3 "Example"
To remove the target of a recipe before building it again:
.eB
%.a: [%_obj]
{
	if [exists [target]] then
		rm [target]
			set clearstat;
	[ar] qc [target] [%_obj];
}
.eE
Note:
you
.I must
use the clearstat,
because otherwise cook's "stat cache" will be incorrect.
.P
This is only an example.
It is better to perform this particular activity using the ``unlink'' flag.
See the [find_command] function, below, for an example.
.H 3 "See Also"
cando, find_command, uptodate
.H 2 "exists-symlink"
This function requires one argument,
being the name of a file to test for existence.
The test will \fInot\fP follow symbolic links,
so it may be used to test for the existence of symbolic links themselves.
The resulting word list is "" (false) if the file does not exist,
and "1" (true) if the file does exist.
.H 3 "See Also"
exists, readlink