Introduction
Introduction Statistics Contact Development Disclaimer Help
Split configuration into config.mk and config.h. - sam - An updated version of …
git clone git://vernunftzentrum.de/sam.git
Log
Files
Refs
LICENSE
---
commit f7f1341bbf15cc480b78f20957aefee7d81fcf62
parent d411e3e2206e3534e76c0b4540c705087cc4520d
Author: Rob King <[email protected]>
Date: Thu, 11 Aug 2016 12:55:50 -0500
Split configuration into config.mk and config.h.
This makes things considerably cleaner.
Also remove lots of unused variables and constants.
Diffstat:
README.rst | 2 +-
config.mk | 17 -----------------
libXg/latin1.c | 6 ++++--
rsam/rsam.c | 4 +++-
sam/Makefile | 16 ++--------------
sam/io.c | 2 +-
sam/sam.c | 10 +++++-----
sam/sam.h | 11 +----------
sam/shell.c | 2 +-
sam/unix.c | 10 ----------
samterm/Makefile | 5 ++---
samterm/main.c | 21 ---------------------
samterm/samterm.h | 2 ++
samterm/unix.c | 4 +---
14 files changed, 23 insertions(+), 89 deletions(-)
---
diff --git a/README.rst b/README.rst
@@ -21,7 +21,7 @@ Installation
Basic Installation
-------------------
-Installation is fairly simple: edit config.mk and then run make install.
+Installation is fairly simple: edit `config.mk` and `config.h` and then run ma…
The `sam` command runs sam.
The `B` command adds a new file to a running instance of sam, or starts sam if…
diff --git a/config.mk b/config.mk
@@ -10,22 +10,6 @@ BINDIR?=$(DESTDIR)/bin
# MANDIR is where manual pages go
MANDIR?=$(DESTDIR)/share/man/man1
-# USE64BITS should be 1 for little-endian architectures with 64-bit pointers,
-# 2 for big-endian architectures with 64-bit pointers, and 0 otherwise.
-# x86_64 systems would generally use 1 here, while DEC Alpha systems would
-# generally use 2.
-USE64BITS?=1
-
# FREETYPEINC should name the directory of your freetype2 includes.
FREETYPEINC?=/usr/include/freetype2
-# TMPDIR should be set to a directory for temporary files with lots of room
-TMPDIR?=/tmp
-
-# If you want to have keyboard control of dot's position, set the following
-# variables to the appropriate ASCII control codes. The default values
-# emulate the WordStar diamond. Setting any command to zero disables it.
-LINEUP=0x05
-LINEDOWN=0x18
-CHARLEFT=0x13
-CHARRIGHT=0x04
-\ No newline at end of file
diff --git a/libXg/latin1.c b/libXg/latin1.c
@@ -5,6 +5,8 @@
#include <stdlib.h>
#include <string.h>
+#include "../config.h"
+
#define MAPPING_MAX 65535
struct latin
@@ -235,10 +237,10 @@ void
initlatin(void)
{
FILE *keyboard = NULL;
- if (getenv("HOME"))
+ if (getenv(HOMEENV))
{
char path[1024] = {0};
- snprintf(path, 1023, "%s/.keyboard", getenv("HOME"));
+ snprintf(path, 1023, "%s/.keyboard", getenv(HOMEENV));
keyboard = fopen(path, "r");
}
diff --git a/rsam/rsam.c b/rsam/rsam.c
@@ -14,6 +14,8 @@
#include <sys/types.h>
#include <unistd.h>
+#include "../config.h"
+
#define PARENT_READ readpipe[0]
#define CHILD_WRITE readpipe[1]
#define CHILD_READ writepipe[0]
@@ -35,7 +37,7 @@ cleanup(void)
int
main(int argc, char **argv)
{
- const char *home = getenv("HOME") ? getenv("HOME") : "/tmp";
+ const char *home = getenv(HOMEENV) ? getenv(HOMEENV) : "/tmp";
long pathmax = pathconf(home, _PC_PATH_MAX) != -1 ? pathco…
int writepipe[2] = {-1};
int readpipe[2] = {-1};
diff --git a/sam/Makefile b/sam/Makefile
@@ -12,16 +12,12 @@
#
include ../config.mk
-# If your system has 64-bit addresses, add -DUSE64BITS to $(OS).
-OS=-DIRIX5 -DUSE64BITS=$(USE64BITS)
+OS=-DIRIX5
# add -Iincludedir for any include directories that need to be searched
# for posix header files (for UMIPS, add -I/usr/include/posix)
INCS=-I../include
-# Set the name of the environment variable containing the user's home d…
-HOMEDIR=HOME
-
# RSAMNAME and TERMNAME contain the names of the files containing the
# sam and samterm executables, respectively. SAMDIR is the directory
# where sam is to be installed. SAMSAVEDIR is the name of the directory
@@ -31,9 +27,6 @@ TERMNAME=samterm
SAMDIR=$(BINDIR)
SAMSAVEDIR=$(BINDIR)
-# Set TMP to a good place for tmp files (with lots of room)
-TMP=$(TMPDIR)
-
# Set SHELLNAME and SHELLPATH to the name of a shell and the pathname
# of its executable
SHELLNAME=sh
@@ -49,12 +42,7 @@ RXSAMNAME=rsam
SAMSAVE=/bin/sh\\n$(SAMSAVEDIR)/samsave
-CFLAGS=$(OS) -D_LIBXG_EXTENSION $(INCS)\
- -DHOMEDIR=\"$(HOMEDIR)\" -DRSAMNAME=\"$(RSAMNAME)\" \
- -DTERMNAME=\"$(TERMNAME)\" -DTMP=\"$(TMP)\" \
- -DSHELLNAME=\"$(SHELLNAME)\" -DSHELLPATH=\"$(SHELLPATH)\" \
- -DRXNAME=\"$(RXNAME)\" -DRXPATHNAME=\"$(RXPATHNAME)\" \
- -DRXSAMNAME=\"$(RXSAMNAME)\" -DSAMSAVE=\"$(SAMSAVE)\"
+CFLAGS=$(OS) -D_LIBXG_EXTENSION $(INCS)
LIB=../libframe/libframe.a ../libXg/libXg.a
CC?=gcc
diff --git a/sam/io.c b/sam/io.c
@@ -233,7 +233,7 @@ connectto(char *machine)
close(p1[1]);
close(p2[0]);
close(p2[1]);
- execl(getenv("RSH") ? getenv("RSH") : RXPATH, getenv("RSH") ? …
+ execl(getenv("RSH") ? getenv("RSH") : RXPATH, getenv("RSH") ? …
dprint("can't exec %s\n", RXPATH);
exits("exec");
diff --git a/sam/sam.c b/sam/sam.c
@@ -28,8 +28,8 @@ char *machine;
char *home;
int bpipeok;
int termlocked;
-char *samterm = SAMTERM;
-char *rsamname = RSAM;
+char *samterm = "samterm";
+char *rsamname = "rsam";
Rune baddir[] = { '<', 'b', 'a', 'd', 'd', 'i', 'r', '>', '\n'};
@@ -62,7 +62,7 @@ main(int argc, char *argv[])
case 'r':
machine = optarg;
- rsamname = RXSAMNAME;
+ rsamname = "rsam";
arg[targc++] = "-r";
arg[targc++] = optarg;
break;
@@ -95,7 +95,7 @@ main(int argc, char *argv[])
Strinit0(&wd);
tempfile.listptr = emalloc(0);
Strinit0(&plan9cmd);
- home = getenv(HOME);
+ home = getenv(HOMEENV);
if(home == 0)
home = "/";
if(!dflag)
@@ -157,7 +157,7 @@ rescue(void)
free(c);
}else
sprint(buf, "nameless.%d", nblank++);
- fprint(io, "#!%s '%s' $* <<'---%s'\n", SAMSAVECMD, buf, buf);
+ fprint(io, "#!%s '%s' $* <<'---%s'\n", "samsave", buf, buf);
addr.r.p1 = 0, addr.r.p2 = f->nrunes;
writeio(f);
fprint(io, "\n---%s\n", (char *)buf);
diff --git a/sam/sam.h b/sam/sam.h
@@ -2,6 +2,7 @@
#include <u.h>
#include <libc.h>
#include "errors.h"
+#include "../config.h"
/*
* BLOCKSIZE is relatively small to keep memory consumption down.
@@ -344,16 +345,6 @@ extern Rune samname[]; /* compiler dependent…
extern Rune *left[];
extern Rune *right[];
-extern char RSAM[]; /* system dependent */
-extern char SAMTERM[];
-extern char HOME[];
-extern char TMPDIR[];
-extern char SH[];
-extern char SHPATH[];
-extern char RX[];
-extern char RXPATH[];
-extern char SAMSAVECMD[];
-
extern char *rsamname; /* globals */
extern char *samterm;
extern Rune genbuf[];
diff --git a/sam/shell.c b/sam/shell.c
@@ -93,7 +93,7 @@ plan9(File *f, int type, String *s, int nest)
close(0); /* so it won't read from terminal */
open("/dev/null", 0);
}
- execl(SHPATH, SH, "-c", Strtoc(&plan9cmd), (char *)0);
+ execl(SHPATH, SHPATH, "-c", Strtoc(&plan9cmd), (char *)0);
exits("exec");
}
if(pid == -1)
diff --git a/sam/unix.c b/sam/unix.c
@@ -22,16 +22,6 @@ static Rune r2[] = {'\n', 0};
static Rune r3[] = {'\'', '"', '`', 0};
Rune *right[]= { r1, r2, r3, 0};
-char RSAM[] = RSAMNAME;
-char SAMTERM[] = TERMNAME;
-char HOME[] = HOMEDIR;
-char TMPDIR[] = TMP;
-char SH[] = SHELLNAME;
-char SHPATH[] = SHELLPATH;
-char RX[] = RXNAME;
-char RXPATH[] = RXPATHNAME;
-char SAMSAVECMD[] = SAMSAVE;
-
void
print_ss(char *s, String *a, String *b)
{
diff --git a/samterm/Makefile b/samterm/Makefile
@@ -13,8 +13,7 @@
include ../config.mk
-# If your system has 64-bit addresses, add -DUSE64BITS to $(OS).
-OS=-DIRIX5 -DUSE64BITS=$(USE64BITS)
+OS=-DIRIX5
# add -Iincludedir for any include directories that need to be searched
# for posix header files (for UMIPS, add -I/usr/include/posix)
@@ -28,7 +27,7 @@ SAMTERM=$(BINDIR)/samterm
# or if you need extra libraries to load with X11 applications
XLIBS=-lXt -lX11 -lXft
-CFLAGS=$(OS) $(INCS) -D_LIBXG_EXTENSION -DLINEUP=$(LINEUP) -DLINEDOWN=$(LINEDO…
+CFLAGS=$(OS) $(INCS) -D_LIBXG_EXTENSION
LIBS=../libframe/libframe.a ../libXg/libXg.a
CC?=gcc
diff --git a/samterm/main.c b/samterm/main.c
@@ -28,22 +28,6 @@ int chord = 0;
char *machine = "localhost";
int nofifo = 0;
-#ifndef LINEUP
-#define LINEUP 0x00
-#endif
-
-#ifndef LINEDOWN
-#define LINEDOWN 0x00
-#endif
-
-#ifndef CHARLEFT
-#define CHARLEFT 0x00
-#endif
-
-#ifndef CHARRIGHT
-#define CHARRIGHT 0x00
-#endif
-
void
main(int argc, char *argv[])
{
@@ -486,11 +470,6 @@ flushtyping(int clearesc)
XFlush(_dpy);
}
-#define SCROLLKEY 0x80
-#define UPKEY 0x81
-#define ESC 0x1B
-#define COMMANDKEY 0x0B
-
void
type(Flayer *l, int res) /* what a bloody mess this is */
{
diff --git a/samterm/samterm.h b/samterm/samterm.h
@@ -1,6 +1,8 @@
/* Copyright (c) 1998 Lucent Technologies - All rights reserved. */
#define SAMTERM
+#include "../config.h"
+
#define RUNESIZE sizeof(Rune)
#define MAXFILES 256
#define NL 5
diff --git a/samterm/unix.c b/samterm/unix.c
@@ -89,15 +89,13 @@ extstart(void)
#ifndef NOFIFO
extern char *machine;
- char *disp;
char *user;
char *home;
int fd;
int flags;
user = getuser();
- disp = getenv("DISPLAY");
- home = getenv("HOME");
+ home = getenv(HOMEENV);
if (home == NULL)
{
You are viewing proxied material from vernunftzentrum.de. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.