Add -s option to config.
This option allows for specifying the directory to use as the location for kernel source files. This option was ported from NetBSD. GitHub Pull Request: https://github.com/freebsd/freebsd/pull/18 Submitted by: Steve Kiernan <stevek@juniper.net>, Simon Gerraty <sjg@juniper.net> Obtained from: Juniper Networks, Inc. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D1722 Relnotes: yes
This commit is contained in:
parent
0b77a417c8
commit
69627a0de1
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=277904
@ -39,6 +39,7 @@
|
||||
.Op Fl CVgp
|
||||
.Op Fl I Ar path
|
||||
.Op Fl d Ar destdir
|
||||
.Op Fl s Ar srcdir
|
||||
.Ar SYSTEM_NAME
|
||||
.Nm
|
||||
.Op Fl x Ar kernel
|
||||
@ -85,6 +86,10 @@ Note that
|
||||
does not append
|
||||
.Ar SYSTEM_NAME
|
||||
to the directory given.
|
||||
.It Fl s Ar srcdir
|
||||
Use
|
||||
.Ar srcdir
|
||||
as the source directory, instead of the default one.
|
||||
.It Fl m
|
||||
Print the MACHINE and MACHINE_ARCH values for this
|
||||
kernel and exit.
|
||||
@ -143,6 +148,14 @@ header files,
|
||||
definitions of
|
||||
the number of various devices that will be compiled into the system.
|
||||
.Pp
|
||||
The
|
||||
.Nm
|
||||
utility looks for kernel sources in the directory
|
||||
.Pa ../..
|
||||
or the one given with the
|
||||
.Fl s
|
||||
option.
|
||||
.Pp
|
||||
After running
|
||||
.Nm ,
|
||||
it is necessary to run
|
||||
|
@ -116,7 +116,7 @@ main(int argc, char **argv)
|
||||
printmachine = 0;
|
||||
kernfile = NULL;
|
||||
SLIST_INIT(&includepath);
|
||||
while ((ch = getopt(argc, argv, "CI:d:gmpVx:")) != -1)
|
||||
while ((ch = getopt(argc, argv, "CI:d:gmpsVx:")) != -1)
|
||||
switch (ch) {
|
||||
case 'C':
|
||||
filebased = 1;
|
||||
@ -144,6 +144,12 @@ main(int argc, char **argv)
|
||||
case 'p':
|
||||
profiling++;
|
||||
break;
|
||||
case 's':
|
||||
if (*srcdir == '\0')
|
||||
strlcpy(srcdir, optarg, sizeof(srcdir));
|
||||
else
|
||||
errx(EXIT_FAILURE, "src directory already set");
|
||||
break;
|
||||
case 'V':
|
||||
printf("%d\n", CONFIGVERS);
|
||||
exit(0);
|
||||
@ -180,7 +186,8 @@ main(int argc, char **argv)
|
||||
len = strlen(destdir);
|
||||
while (len > 1 && destdir[len - 1] == '/')
|
||||
destdir[--len] = '\0';
|
||||
get_srcdir();
|
||||
if (*srcdir == '\0')
|
||||
get_srcdir();
|
||||
} else {
|
||||
strlcpy(destdir, CDIR, sizeof(destdir));
|
||||
strlcat(destdir, PREFIX, sizeof(destdir));
|
||||
@ -275,7 +282,8 @@ static void
|
||||
usage(void)
|
||||
{
|
||||
|
||||
fprintf(stderr, "usage: config [-CgmpV] [-d destdir] sysname\n");
|
||||
fprintf(stderr,
|
||||
"usage: config [-CgmpV] [-d destdir] [-s srcdir] sysname\n");
|
||||
fprintf(stderr, " config -x kernel\n");
|
||||
exit(EX_USAGE);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user