summaryrefslogtreecommitdiff
path: root/libdiskfs
diff options
context:
space:
mode:
authorThomas Bushnell <thomas@gnu.org>1996-09-05 16:59:37 +0000
committerThomas Bushnell <thomas@gnu.org>1996-09-05 16:59:37 +0000
commit5145728f45d1a83ebe229ee38c4f2534a43c385f (patch)
tree48dfa16e2e256f1627e60d1f1d19dfcc9e6e46d2 /libdiskfs
parent41476b24b860bc333ed99c3eb2b575193b111aa7 (diff)
*** empty log message ***
Diffstat (limited to 'libdiskfs')
-rw-r--r--libdiskfs/ChangeLog17
-rw-r--r--libdiskfs/Makefile2
-rw-r--r--libdiskfs/boot-start.c6
-rw-r--r--libdiskfs/diskfs.h12
-rw-r--r--libdiskfs/io-version.c8
-rw-r--r--libdiskfs/opts-version.c29
6 files changed, 38 insertions, 36 deletions
diff --git a/libdiskfs/ChangeLog b/libdiskfs/ChangeLog
index a0d446e8..03f07fd0 100644
--- a/libdiskfs/ChangeLog
+++ b/libdiskfs/ChangeLog
@@ -1,3 +1,20 @@
+Thu Sep 5 11:13:54 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
+
+ * io-version.c (diskfs_S_io_server_version): Only fill in
+ SERVER_NAME; ignore the rest.
+
+ * diskfs.h (diskfs_major_version, diskfs_minor_version,
+ diskfs_edit_version): Delete variables.
+ (diskfs_server_version, diskfs_extra_version): New variables.
+ * boot-start.c (diskfs_S_fsys_init): Register version from
+ diskfs_server_version; pass empty string as release.
+ * extra-version.c: New file.
+ * Makefile (OTHERSRCS): Add extra-version.c.
+ * opts-version.c (diskfs_extra_version): Delete special
+ declaration.
+ (_print_version): Use the user's provided version number, and also
+ give it our (libdiskfs) version number.
+
Tue Sep 3 10:48:05 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* name-cache.c (diskfs_enter_lookup_cache): Cache `.' and `..'
diff --git a/libdiskfs/Makefile b/libdiskfs/Makefile
index bf355c47..e2304863 100644
--- a/libdiskfs/Makefile
+++ b/libdiskfs/Makefile
@@ -48,7 +48,7 @@ OTHERSRCS = conch-fetch.c conch-set.c dir-clear.c dir-init.c dir-renamed.c \
dev-open.c dev-io.c dev-globals.c console.c disk-pager.c \
name-cache.c direnter.c dirrewrite.c dirremove.c lookup.c dead-name.c \
validate-mode.c validate-group.c validate-author.c validate-flags.c \
- validate-rdev.c validate-owner.c
+ validate-rdev.c validate-owner.c extra-version.c
SRCS = $(OTHERSRCS) $(FSSRCS) $(IOSRCS) $(FSYSSRCS) $(IFSOCKSRCS)
LCLHDRS = diskfs.h priv.h lithp.h fsmutations.h diskfs-pager.h
installhdrs = diskfs.h diskfs-pager.h
diff --git a/libdiskfs/boot-start.c b/libdiskfs/boot-start.c
index 9c0e0f79..ee44eb9a 100644
--- a/libdiskfs/boot-start.c
+++ b/libdiskfs/boot-start.c
@@ -366,7 +366,6 @@ diskfs_S_fsys_init (mach_port_t port,
struct port_infe *pt;
static int initdone = 0;
process_t execprocess;
- string_t version;
mach_port_t host, startup;
error_t err;
mach_port_t root_pt;
@@ -463,9 +462,8 @@ diskfs_S_fsys_init (mach_port_t port,
if (err)
return err;
- sprintf (version, "%d.%d", diskfs_major_version, diskfs_minor_version);
- proc_register_version (procserver, host,
- diskfs_server_name, HURD_RELEASE, version);
+ proc_register_version (procserver, host, diskfs_server_name, "",
+ diskfs_server_version);
err = proc_getmsgport (procserver, 1, &startup);
if (!err)
diff --git a/libdiskfs/diskfs.h b/libdiskfs/diskfs.h
index fe8374de..450e6e2e 100644
--- a/libdiskfs/diskfs.h
+++ b/libdiskfs/diskfs.h
@@ -203,11 +203,13 @@ extern struct node *diskfs_root_node;
filesystem server. */
extern char *diskfs_server_name;
-/* The user must define these variables. Set these to be the major, minor,
- and edit version numbers. */
-extern int diskfs_major_version;
-extern int diskfs_minor_version;
-extern int diskfs_edit_version;
+/* The user must define this variables. Set this to be the server
+ version number. */
+extern char *diskfs_server_version;
+
+/* The user may define this variable. Set this to be any additional
+ version specification that should be printed for --version. */
+extern char *diskfs_extra_version;
/* The user may define this variable. This should be nonzero iff the
filesystem format supports shortcutting symlink translation.
diff --git a/libdiskfs/io-version.c b/libdiskfs/io-version.c
index a1f12d79..0dba8046 100644
--- a/libdiskfs/io-version.c
+++ b/libdiskfs/io-version.c
@@ -1,5 +1,5 @@
/*
- Copyright (C) 1994 Free Software Foundation
+ Copyright (C) 1994, 1996 Free Software Foundation
This file is part of the GNU Hurd.
@@ -31,10 +31,8 @@ diskfs_S_io_server_version (struct protid *cred,
{
if (cred)
{
- strcpy (server_name, diskfs_server_name);
- *major = diskfs_major_version;
- *minor = diskfs_minor_version;
- *edit = diskfs_edit_version;
+ sprintf (server_name, "%s %s",
+ diskfs_server_name, diskfs_server_version);
return 0;
}
else
diff --git a/libdiskfs/opts-version.c b/libdiskfs/opts-version.c
index 268a4017..a42a79d6 100644
--- a/libdiskfs/opts-version.c
+++ b/libdiskfs/opts-version.c
@@ -22,36 +22,23 @@
#include "priv.h"
-extern char *diskfs_extra_version;
-#pragma weak diskfs_extra_version
-
static void
_print_version (FILE *stream, struct argp_state *state)
{
if (argp_program_version)
/* If this is non-zero, then the program's probably defined it, so let
that take precedence over the default. */
- fprintf (stream, "%s\n", argp_program_version);
+ fputs (argp_program_version, stream);
else
- /* Construct a version using the standard diskfs variables. */
{
- char ev[15] = { 0 };
-
- if (diskfs_edit_version)
- if (diskfs_edit_version <= 26)
- sprintf (ev, "%c", diskfs_edit_version - 1 + 'a');
- else
- sprintf (ev, ".%d", diskfs_edit_version);
-
- if (diskfs_extra_version)
- fprintf (stream, "%s %d.%d%s (%s, GNU %s)\n",
- diskfs_server_name, diskfs_major_version, diskfs_minor_version,
- ev, diskfs_extra_version, HURD_RELEASE);
- else
- fprintf (stream, "%s %d.%d%s (GNU %s)\n",
- diskfs_server_name, diskfs_major_version, diskfs_minor_version,
- ev, HURD_RELEASE);
+ fprintf (stream, "%s %s ", diskfs_server_name, diskfs_server_version);
+ if (diskfs_extra_version[0])
+ fprintf (stream, "(%s) ", diskfs_extra_version);
}
+ /* And because diskfs is big and huge, put our information out too. */
+ fputs (STANDARD_HURD_VERSION (libdiskfs), stream);
+
+ putc ('\n', stream);
}
void (*argp_program_version_hook) (FILE *stream, struct argp_state *state)