# plus the top-level Makefile to make it work stand-alone.
_TARFILES := Makefile
-CURSES := -I/usr/include/ncurses -lncurses
+CURSES := -lncurses
# Preprocessor flags.
PKG_CPPFLAGS := -D_GNU_SOURCE -I proc
-CPPFLAGS :=
+CPPFLAGS := -I/usr/include/ncurses
ALL_CPPFLAGS := $(PKG_CPPFLAGS) $(CPPFLAGS)
# Left out -Wconversion due to noise in glibc headers.
# to compile procps, they might best be moved to CFLAGS.
# On the other hand, they aren't normal -O -g things either.
#
-PKG_CFLAGS := -fno-common -ffast-math \
+PKG_CFLAGS := -fno-common -ffast-math \
-W -Wall -Wshadow -Wcast-align -Wredundant-decls \
-Wbad-function-cast -Wcast-qual -Wwrite-strings -Waggregate-return \
-Wstrict-prototypes -Wmissing-prototypes
-CFLAGS := -O2 -g3
-ALL_CFLAGS := $(PKG_CFLAGS) $(CFLAGS)
+CFLAGS := -O2 -g3
+ALL_CFLAGS := $(PKG_CFLAGS) $(CFLAGS)
-PKG_LDFLAGS := -Wl,-warn-common
-LDFLAGS :=
-ALL_LDFLAGS := $(PKG_LDFLAGS) $(LDFLAGS)
+PKG_LDFLAGS := -Wl,-warn-common
+LDFLAGS :=
+ALL_LDFLAGS := $(PKG_LDFLAGS) $(LDFLAGS)
############ Add some extra flags if gcc allows
# Unlike the kernel one, this check_gcc goes all the way to
# producing an executable. There might be a -m64 that works
# until you go looking for a 64-bit curses library.
-check_gcc = $(shell if $(CC) $(ALL_CFLAGS) dummy.c $(ALL_LDFLAGS) $(1) -o /dev/null $(CURSES) > /dev/null 2>&1; then echo "$(1)"; else echo "$(2)"; fi ;)
+check_gcc = $(shell if $(CC) $(ALL_CPPFLAGS) $(ALL_CFLAGS) dummy.c $(ALL_LDFLAGS) $(1) -o /dev/null $(CURSES) > /dev/null 2>&1; then echo "$(1)"; else echo "$(2)"; fi ;)
ALL_CFLAGS += $(call check_gcc,-Wdeclaration-after-statement,)
ALL_CFLAGS += $(call check_gcc,-Wpadded,)
+procps-3.2.1 --> procps-3.2.2
+
+avoid warning about -lncurses when not linking -- thanks FLWM
+
procps-3.2.0 --> procps-3.2.1
build even w/ curses in an odd location -- thanks to Segher Boessenkool
"%ld "
"%lu %"KLF"u %"KLF"u %"KLF"u %"KLF"u %"KLF"u "
"%*s %*s %*s %*s " /* discard, no RT signals & Linux 2.1 used hex */
- "%"KLF"u %lu %lu "
+ "%"KLF"u %*lu %*lu "
"%d %d "
"%lu %lu",
&P->state,
&P->rss,
&P->rss_rlim, &P->start_code, &P->end_code, &P->start_stack, &P->kstk_esp, &P->kstk_eip,
/* P->signal, P->blocked, P->sigignore, P->sigcatch, */ /* can't use */
- &P->wchan, &P->nswap, &P->cnswap,
+ &P->wchan, /* &P->nswap, &P->cnswap, */ /* nswap and cnswap dead for 2.4.xx and up */
/* -- Linux 2.0.35 ends here -- */
&P->exit_signal, &P->processor, /* 2.2.1 ends with "exit_signal" */
/* -- Linux 2.2.8 to 2.5.17 end here -- */
// s signal, blocked, sigignore, sigcatch,
// lu flags, min_flt, cmin_flt, maj_flt, cmaj_flt, utime, stime,
// lu rss_rlim, start_code, end_code, start_stack, kstk_esp, kstk_eip,
-// lu start_time, vsize, wchan, nswap, cnswap,
+// lu start_time, vsize, wchan,
// This is to help document a transition from pid to tgid/tid caused
// by the introduction of thread support. It is used in cases where
min_flt, // stat number of minor page faults since process start
maj_flt, // stat number of major page faults since process start
cmin_flt, // stat cumulative min_flt of process and child processes
- cmaj_flt, // stat cumulative maj_flt of process and child processes
- nswap, // stat ?
- cnswap; // stat cumulative nswap ?
+ cmaj_flt; // stat cumulative maj_flt of process and child processes
unsigned KLONG
start_code, // stat address of beginning of code segment
end_code, // stat address of end of code segment
CMP_INT(maj_flt)
CMP_INT(cmin_flt)
CMP_INT(cmaj_flt)
-CMP_INT(nswap)
-CMP_INT(cnswap)
CMP_INT(utime)
CMP_INT(stime) /* Old: sort by systime. New: show start time. Uh oh. */
CMP_INT(start_code)
{"cmaj_flt", "-", pr_nop, sr_cmaj_flt, 1, 0, LNX, AN|RIGHT},
{"cmd", "CMD", pr_args, sr_cmd, 16, ARG, DEC, PO|UNLIMITED}, /*ucomm*/
{"cmin_flt", "-", pr_nop, sr_cmin_flt, 1, 0, LNX, AN|RIGHT},
-{"cnswap", "-", pr_nop, sr_cnswap, 1, 0, LNX, AN|RIGHT},
+{"cnswap", "-", pr_nop, sr_nop, 1, 0, LNX, AN|RIGHT},
{"comm", "COMMAND", pr_comm, sr_nop, 16, COM, U98, PO|UNLIMITED}, /*ucomm*/
{"command", "COMMAND", pr_args, sr_nop, 16, ARG, XXX, PO|UNLIMITED}, /*args*/
{"context", "CONTEXT", pr_context, sr_nop, 40, 0, LNX, ET|LEFT},
{"nlwp", "NLWP", pr_nlwp, sr_nlwp, 4, 0, SUN, AN|RIGHT},
{"nsignals", "NSIGS", pr_nop, sr_nop, 5, 0, DEC, AN|RIGHT}, /*nsigs*/
{"nsigs", "NSIGS", pr_nop, sr_nop, 5, 0, BSD, AN|RIGHT}, /*nsignals*/
-{"nswap", "NSWAP", pr_nop, sr_nswap, 5, 0, XXX, AN|RIGHT},
+{"nswap", "NSWAP", pr_nop, sr_nop, 5, 0, XXX, AN|RIGHT},
{"nvcsw", "VCSW", pr_nop, sr_nop, 5, 0, XXX, AN|RIGHT},
{"nwchan", "WCHAN", pr_nwchan, sr_nop, 6, 0, XXX, TO|RIGHT},
{"opri", "PRI", pr_opri, sr_priority, 3, 0, SUN, TO|RIGHT},