~kris/suckless

tabbed

tabbed/Makefile -rw-r--r-- 1.8 KiB
d6e4aafd — Hiltjo Posthuma 1 year, 1 month ago
bump version to 0.9
7215169f — Hiltjo Posthuma 2 years ago
bump version to 0.8
fix: faulty zombie reaping

issues with the current signal handler:

1. die() isn't async-signal-safe
2. there's a race-window during reinstating the signal handler allowing
   zombies to be produced (should be rare in practice).
3. if waitpid fails, it will clobber the errno which can lead to
   undesired codepath being taken on the resuming code (this one can
   actually occur in practice).

to reproduce the 3rd issue:

	~> ./tabbed &
	[1] 20644
	0x1800003
	~> while :; do kill -s SIGCHLD 20644; done >&2 2>/dev/null
	XIO:  fatal IO error 10 (No child processes) on X server ":0"
	      after 47 requests (47 known processed) with 0 events remaining.
	[1]  + exit 1     ./tabbed

set the signal handler to SIG_IGN to reap zombies automatically
(according to POSIX.1-2001).

NOTE: this patch follows dwm's commit 712d663. according to the manpage,
none of the sa_flags being set are meaningful since we're using SIG_IGN.
they used to be meaningful on earlier version of the patch where it was
using SIG_DFL, i've kept them here just in case.
418899e7 — Hiltjo Posthuma 3 years ago
Makefile: whoops add proper comment for OpenBSD
deda1bb0 — Hiltjo Posthuma 3 years ago
Makefile improvements

* Respect system cflags, ldflags, packages can override them all with
  TABBED_{CFLAGS,LDFLAGS}. Remove -Wall and -Os and -s.
* Install README as documentation.
* dist: stream directly to a gzipped tarball.
* options: remove it.
* Add ".POSIX:"
* Remove config.mk
13f13ee5 — Hiltjo Posthuma 3 years ago
Makefile: simplify and remove hiding the build process
910e67db — Hiltjo Posthuma 3 years ago
Makefile: add xembed.1 in the dist target
46887ac5 — Quentin Rameau 10 years ago
Fix install paths and default build flag

Ensure that paths are quoted.
Compile with -Os by default.

Signed-off-by: Christoph Lohmann <20h@r-36.net>
d60069a3 — Connor Lane Smith 11 years ago
add xembed wrapper utility

xembed will cause a command to attempt to XEmbed into the window given
by the environment variable XEMBED, so long as it is in the foreground
of its controlling terminal. This causes a process to effectively take
the place of the terminal window, unless it is backgrounded.

Signed-off-by: Christoph Lohmann <20h@r-36.net>
b1377739 — Christoph Lohmann 14 years ago
Introduce ARG* macros to simplify arg handling.
b44c82f1 — Enno Boland (tox) 16 years ago
fixing README and Makefile.
6e942068 — Enno Boland (tox) 17 years ago
removing surf-stuff, distributing tabbed on its own.
7d000b3e — Enno Boland (tox) 17 years ago
start writing tabbed.
a1b70380 — Enno Boland (tox) 17 years ago
moving config.h to config.def.h.
b6e181e8 — Thomas Menari 17 years ago
merged, now has download bar, other misc fixes
6848b923 — Enno Boland (Gottox) 17 years ago
rearranging, adding initial keyboard support.
ad005db1 — Enno Boland (Gottox) 17 years ago
supporting multiple windows per instance
efdd0dd5 — Enno Boland (Gottox) 17 years ago
Initial Commit.