At Tue, 19 Jul 2016 13:55:23 -0500, "Matthew D. Fuller" <[email protected]> wrote: Subject: Re: Menus and building (was Re: menus stay where first activated (on XQuartz)) > > > Of our ~42kB of .cmake files, over half is to do with building the > > manual, > > Notably, the cmake stuff (~21kB after discounting the manual, which > wasn't the same back then anyway) replaced ~11kB of Imake stuff in > 3.8.2. So that's less than double the size, never mind all the > additional capabilities it has that the old didn't. It's hard to > consider that particularly excessive...
So, here's the entire 2.2KB BSD Makefile for CTWM-3.8.2. I didn't have
to write it -- someone decided, before I could even ask, to import ctwm
into the main NetBSD distribution. I've made one tiny change, which was
to correct the library dependencies. So, ctwm will now be included in
future releases of NetBSD in the default base X11 install.
As you can see it's mostly lists of filenames and a few other settings.
A little bit more boilerplate would be required to make this portable
with Bmake (the portable NetBSD Pmake) (less if one could coax Simon
Gerraty, the current Bmake maintainer, into supporting X11 packages),
which would then allow it to build on any BSD, any Linux, Solaris, AIX,
Darwin, HPUX, Cygwin, or any other generic POSIX system where Bmake
works by default, and possibly still OSF1 and UnixWare too. Certainly
anything already having X.org X11R6 or X11R7. Bmake builds and installs
on any of those systems in a teeny tiny fraction of the time it takes to
even download CMake on most networks, let alone build it.
# $NetBSD: Makefile,v 1.4 2016/04/13 22:26:48 christos Exp $
.include <bsd.own.mk>
PROG= ctwm
SRCS= add_window.c deftwmrc.c events.c gram.tab.c gc.c \
list.c util.c ctwm.c lex.c parse.c menus.c resize.c \
version.c iconmgr.c cursor.c icons.c workmgr.c windowbox.c \
clicktofocus.c vscreen.c session.c mwmhints.c gnome.c
YHEADER=1
CTWMCONFIGDIR= ${X11ETCDIR}/ctwm
CTWMDIR= ${X11SRCDIR}/external/mit/ctwm/dist
XPMDIR= ${X11INCDIR}/X11/pixmaps/ctwm
CPPFLAGS+= -I. -I${CTWMDIR}/src -DHAVE_MKSTEMP \
-DNO_ALLOCA -DCSRG_BASED -DUSEM4 -DGNOME -DXPM
CPPFLAGS+= -DPIXMAP_DIRECTORY=\"${XPMDIR}\"
CPPFLAGS+=
-DCTWM_WELCOME_FILE=\"xpm:${X11INCDIR}/X11/pixmaps/NetBSD-inv.xpm\"
CPPFLAGS.parse.c= -DSYSTEM_INIT_FILE=\"${CTWMCONFIGDIR}/system.twmrc\" \
-DM4CMD=\"m4\"
FILESDIR= ${XPMDIR}
FILES= 3D_Expand15.xpm 3D_Iconify15.xpm 3D_Lightning15.xpm \
3D_Menu15.xpm 3D_Resize15.xpm 3D_Zoom15.xpm
3dcircle.xpm \
3ddimple.xpm 3ddot.xpm 3dfeet.xpm 3dleopard.xpm
3dpie.xpm \
3dpyramid.xpm 3dslant.xpm IslandD.xpm IslandW.xpm
LRom.xpm\
LRom1.xpm arthur.xpm audio_editor.xpm background1.xpm \
background2.xpm background3.xpm background4.xpm \
background5.xpm background6.xpm background7.xpm \
background8.xpm background9.xpm ball1.xpm ball10.xpm \
ball11.xpm ball12.xpm ball2.xpm ball3.xpm ball4.xpm \
ball5.xpm ball6.xpm ball7.xpm ball8.xpm ball9.xpm \
cdrom1.xpm claude.xpm clipboard.xpm datebook.xpm \
emacs.xpm ghostview.xpm hpterm.xpm mail0.xpm mail1.xpm \
nothing.xpm nt1.xpm nt2.xpm pixmap.xpm postit.xpm \
skull.xpm spider.xpm term.xpm unknown.xpm unknown1.xpm \
unread.xpm welcome.xpm xarchie.xpm xcalc.xpm xcalc2.xpm
\
xedit.xpm xftp.xpm xgopher.xpm xgrab.xpm xhpcalc.xpm \
xirc.xpm xmail.xpm xman.xpm xmosaic.xpm xnomail.xpm \
xrn-compose.xpm xrn.goodnews.xpm xrn.nonews.xpm xrn.xpm
\
xterm.xpm system.ctwmrc
FILESDIR_system.ctwmrc = ${CTWMCONFIGDIR}
LDADD+= -lXpm -lXmu -lXt -lSM -lICE -lXext -lX11 -lxcb -lXau -lXdmcp
DPADD+= ${LIBXPM} ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} ${LIBXEXT} ${LIBX11}
${LIBXCB} ${LIBXAU} ${LIBXDMCP}
.PATH: ${CTWMDIR} ${CTWMDIR}/xpm
.include <bsd.files.mk>
.include <bsd.x11.mk>
.include <bsd.prog.mk>
--
Greg A. Woods
Planix, Inc.
<[email protected]> +1 250 762-7675 http://www.planix.com/
pgp6eaPO53yOn.pgp
Description: PGP signature
