version 1.439, 2014/08/12 21:35:48 |
version 1.445, 2014/10/25 01:03:52 |
|
|
# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF |
# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF |
# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
|
|
VERSION = 1.13.1 |
BASEBIN = mandoc demandoc |
|
DBBIN = makewhatis |
# === USER SETTINGS ==================================================== |
|
|
|
# --- user settings relevant for all builds ---------------------------- |
|
|
|
# Specify this if you want to hard-code the operating system to appear |
|
# in the lower-left hand corner of -mdoc manuals. |
|
# |
|
# CFLAGS += -DOSNAME="\"OpenBSD 5.5\"" |
|
|
|
# IFF your system supports multi-byte functions (setlocale(), wcwidth(), |
|
# putwchar()) AND has __STDC_ISO_10646__ (that is, wchar_t is simply a |
|
# UCS-4 value) should you define USE_WCHAR. If you define it and your |
|
# system DOESN'T support this, -Tlocale will produce garbage. |
|
# If you don't define it, -Tlocale is a synonym for -Tascii. |
|
# |
|
CFLAGS += -DUSE_WCHAR |
|
|
|
CFLAGS += -g -W -Wall -Wstrict-prototypes |
|
CFLAGS += -Wno-unused-parameter -Wwrite-strings |
|
PREFIX = /usr/local |
|
BINDIR = $(PREFIX)/bin |
|
INCLUDEDIR = $(PREFIX)/include/mandoc |
|
LIBDIR = $(PREFIX)/lib/mandoc |
|
MANDIR = $(PREFIX)/man |
|
EXAMPLEDIR = $(PREFIX)/share/examples/mandoc |
|
|
|
INSTALL = install |
|
INSTALL_PROGRAM = $(INSTALL) -m 0555 |
|
INSTALL_DATA = $(INSTALL) -m 0444 |
|
INSTALL_LIB = $(INSTALL) -m 0444 |
|
INSTALL_SOURCE = $(INSTALL) -m 0644 |
|
INSTALL_MAN = $(INSTALL_DATA) |
|
|
|
# --- user settings related to database support ------------------------ |
|
|
|
# Building apropos(1) and makewhatis(8) requires SQLite3. |
|
# To avoid that dependency, comment the following line. |
|
# |
|
BUILD_TARGETS += db-build |
|
|
|
# The remaining settings in this section |
|
# are only relevant if db-build is enabled. |
|
# Otherwise, they have no effect either way. |
|
|
|
# If your system has manpath(1), uncomment this. This is most any |
|
# system that's not OpenBSD or NetBSD. If uncommented, apropos(1) |
|
# and makewhatis(8) will use manpath(1) to get the MANPATH variable. |
|
# |
|
#CFLAGS += -DUSE_MANPATH |
|
|
|
# On some systems, SQLite3 may be installed below /usr/local. |
|
# In that case, uncomment the following two lines. |
|
# |
|
#CFLAGS += -I/usr/local/include |
|
#DBLIB += -L/usr/local/lib |
|
|
|
# OpenBSD has the ohash functions in libutil. |
|
# Comment the following line if your system doesn't. |
|
# |
|
DBLIB += -lutil |
|
|
|
SBINDIR = $(PREFIX)/sbin |
|
|
|
# --- user settings related to man.cgi --------------------------------- |
|
|
|
# To build man.cgi, copy cgi.h.example to cgi.h, edit it, |
|
# and enable the following line. |
|
# Obviously, this requires that db-build is enabled, too. |
|
# |
|
#BUILD_TARGETS += cgi-build |
|
|
|
# The remaining settings in this section |
|
# are only relevant if cgi-build is enabled. |
|
# Otherwise, they have no effect either way. |
|
|
|
# If your system does not support static binaries, comment this, |
|
# for example on Mac OS X. |
|
# |
|
STATIC = -static |
|
|
|
# Linux requires -pthread for statical linking. |
|
# |
|
#STATIC += -pthread |
|
|
|
WWWPREFIX = /var/www |
|
HTDOCDIR = $(WWWPREFIX)/htdocs |
|
CGIBINDIR = $(WWWPREFIX)/cgi-bin |
|
|
|
# === END OF USER SETTINGS ============================================= |
|
|
|
INSTALL_TARGETS = $(BUILD_TARGETS:-build=-install) |
|
|
|
BASEBIN = mandoc preconv demandoc |
|
DBBIN = apropos makewhatis |
|
CGIBIN = man.cgi |
CGIBIN = man.cgi |
|
|
DBLIB += -lsqlite3 |
|
|
|
TESTSRCS = test-dirent-namlen.c \ |
TESTSRCS = test-dirent-namlen.c \ |
test-fgetln.c \ |
test-fgetln.c \ |
test-fts.c \ |
test-fts.c \ |
Line 122 TESTSRCS = test-dirent-namlen.c \ |
|
Line 26 TESTSRCS = test-dirent-namlen.c \ |
|
test-mmap.c \ |
test-mmap.c \ |
test-ohash.c \ |
test-ohash.c \ |
test-reallocarray.c \ |
test-reallocarray.c \ |
|
test-sqlite3.c \ |
test-sqlite3_errstr.c \ |
test-sqlite3_errstr.c \ |
test-strcasestr.c \ |
test-strcasestr.c \ |
test-strlcat.c \ |
test-strlcat.c \ |
test-strlcpy.c \ |
test-strlcpy.c \ |
test-strptime.c \ |
test-strptime.c \ |
test-strsep.c |
test-strsep.c \ |
|
test-wchar.c |
|
|
SRCS = apropos.c \ |
SRCS = arch.c \ |
arch.c \ |
|
att.c \ |
att.c \ |
cgi.c \ |
cgi.c \ |
chars.c \ |
chars.c \ |
Line 204 DISTFILES = INSTALL \ |
|
Line 109 DISTFILES = INSTALL \ |
|
chars.in \ |
chars.in \ |
compat_fts.h \ |
compat_fts.h \ |
compat_ohash.h \ |
compat_ohash.h \ |
config.h.post \ |
|
config.h.pre \ |
|
configure \ |
configure \ |
|
configure.local.example \ |
demandoc.1 \ |
demandoc.1 \ |
eqn.7 \ |
eqn.7 \ |
example.style.css \ |
example.style.css \ |
Line 220 DISTFILES = INSTALL \ |
|
Line 124 DISTFILES = INSTALL \ |
|
main.h \ |
main.h \ |
makewhatis.8 \ |
makewhatis.8 \ |
man-cgi.css \ |
man-cgi.css \ |
|
man.1 \ |
man.7 \ |
man.7 \ |
man.cgi.8 \ |
man.cgi.8 \ |
man.h \ |
man.h \ |
Line 240 DISTFILES = INSTALL \ |
|
Line 145 DISTFILES = INSTALL \ |
|
mdoc.h \ |
mdoc.h \ |
msec.in \ |
msec.in \ |
out.h \ |
out.h \ |
preconv.1 \ |
|
predefs.in \ |
predefs.in \ |
roff.7 \ |
roff.7 \ |
st.in \ |
st.in \ |
Line 281 LIBMANDOC_OBJS = $(LIBMAN_OBJS) \ |
|
Line 185 LIBMANDOC_OBJS = $(LIBMAN_OBJS) \ |
|
mandoc.o \ |
mandoc.o \ |
mandoc_aux.o \ |
mandoc_aux.o \ |
msec.o \ |
msec.o \ |
|
preconv.o \ |
read.o |
read.o |
|
|
COMPAT_OBJS = compat_fgetln.o \ |
COMPAT_OBJS = compat_fgetln.o \ |
Line 317 MANDOC_OBJS = $(MANDOC_HTML_OBJS) \ |
|
Line 222 MANDOC_OBJS = $(MANDOC_HTML_OBJS) \ |
|
out.o \ |
out.o \ |
tree.o |
tree.o |
|
|
|
MAN_OBJS = $(MANDOC_OBJS) |
|
|
MAKEWHATIS_OBJS = mandocdb.o mansearch_const.o manpath.o |
MAKEWHATIS_OBJS = mandocdb.o mansearch_const.o manpath.o |
|
|
PRECONV_OBJS = preconv.o |
APROPOS_OBJS = mansearch.o mansearch_const.o manpath.o |
|
|
APROPOS_OBJS = apropos.o mansearch.o mansearch_const.o manpath.o |
|
|
|
CGI_OBJS = $(MANDOC_HTML_OBJS) \ |
CGI_OBJS = $(MANDOC_HTML_OBJS) \ |
cgi.o \ |
cgi.o \ |
mansearch.o \ |
mansearch.o \ |
Line 335 DEMANDOC_OBJS = demandoc.o |
|
Line 240 DEMANDOC_OBJS = demandoc.o |
|
|
|
WWW_MANS = apropos.1.html \ |
WWW_MANS = apropos.1.html \ |
demandoc.1.html \ |
demandoc.1.html \ |
|
man.1.html \ |
mandoc.1.html \ |
mandoc.1.html \ |
preconv.1.html \ |
|
mandoc.3.html \ |
mandoc.3.html \ |
mandoc_escape.3.html \ |
mandoc_escape.3.html \ |
mandoc_html.3.html \ |
mandoc_html.3.html \ |
Line 363 WWW_MANS = apropos.1.html \ |
|
Line 268 WWW_MANS = apropos.1.html \ |
|
WWW_OBJS = mdocml.tar.gz \ |
WWW_OBJS = mdocml.tar.gz \ |
mdocml.sha256 |
mdocml.sha256 |
|
|
|
include Makefile.local |
|
|
|
INSTALL_TARGETS = $(BUILD_TARGETS:-build=-install) |
|
|
# === DEPENDENCY HANDLING ============================================== |
# === DEPENDENCY HANDLING ============================================== |
|
|
all: base-build $(BUILD_TARGETS) |
all: base-build $(BUILD_TARGETS) Makefile.local |
|
|
base-build: $(BASEBIN) |
base-build: $(BASEBIN) |
|
|
Line 377 install: base-install $(INSTALL_TARGETS) |
|
Line 286 install: base-install $(INSTALL_TARGETS) |
|
|
|
www: $(WWW_OBJS) $(WWW_MANS) |
www: $(WWW_OBJS) $(WWW_MANS) |
|
|
|
$(WWW_MANS): mandoc |
|
|
include Makefile.depend |
include Makefile.depend |
|
|
# === TARGETS CONTAINING SHELL COMMANDS ================================ |
# === TARGETS CONTAINING SHELL COMMANDS ================================ |
|
|
|
distclean: clean |
|
rm -f Makefile.local config.h config.h.old config.log config.log.old |
|
|
clean: |
clean: |
rm -f libmandoc.a $(LIBMANDOC_OBJS) |
rm -f libmandoc.a $(LIBMANDOC_OBJS) $(COMPAT_OBJS) |
rm -f apropos $(APROPOS_OBJS) |
rm -f mandoc $(MANDOC_OBJS) $(APROPOS_OBJS) |
rm -f makewhatis $(MAKEWHATIS_OBJS) |
rm -f makewhatis $(MAKEWHATIS_OBJS) |
rm -f preconv $(PRECONV_OBJS) |
|
rm -f man.cgi $(CGI_OBJS) |
rm -f man.cgi $(CGI_OBJS) |
rm -f manpage $(MANPAGE_OBJS) |
rm -f manpage $(MANPAGE_OBJS) |
rm -f demandoc $(DEMANDOC_OBJS) |
rm -f demandoc $(DEMANDOC_OBJS) |
rm -f mandoc $(MANDOC_OBJS) |
|
rm -f config.h config.log $(COMPAT_OBJS) |
|
rm -f $(WWW_MANS) $(WWW_OBJS) |
rm -f $(WWW_MANS) $(WWW_OBJS) |
rm -rf *.dSYM |
rm -rf *.dSYM |
|
|
Line 406 base-install: base-build |
|
Line 317 base-install: base-build |
|
$(INSTALL_LIB) libmandoc.a $(DESTDIR)$(LIBDIR) |
$(INSTALL_LIB) libmandoc.a $(DESTDIR)$(LIBDIR) |
$(INSTALL_LIB) man.h mandoc.h mandoc_aux.h mdoc.h \ |
$(INSTALL_LIB) man.h mandoc.h mandoc_aux.h mdoc.h \ |
$(DESTDIR)$(INCLUDEDIR) |
$(DESTDIR)$(INCLUDEDIR) |
$(INSTALL_MAN) mandoc.1 preconv.1 demandoc.1 $(DESTDIR)$(MANDIR)/man1 |
$(INSTALL_MAN) man.1 mandoc.1 demandoc.1 \ |
|
$(DESTDIR)$(MANDIR)/man1 |
$(INSTALL_MAN) mandoc.3 mandoc_escape.3 mandoc_malloc.3 \ |
$(INSTALL_MAN) mandoc.3 mandoc_escape.3 mandoc_malloc.3 \ |
mchars_alloc.3 tbl.3 $(DESTDIR)$(MANDIR)/man3 |
mchars_alloc.3 tbl.3 $(DESTDIR)$(MANDIR)/man3 |
$(INSTALL_MAN) man.7 mdoc.7 roff.7 eqn.7 tbl.7 mandoc_char.7 \ |
$(INSTALL_MAN) man.7 mdoc.7 roff.7 eqn.7 tbl.7 mandoc_char.7 \ |
Line 420 db-install: db-build |
|
Line 332 db-install: db-build |
|
mkdir -p $(DESTDIR)$(MANDIR)/man3 |
mkdir -p $(DESTDIR)$(MANDIR)/man3 |
mkdir -p $(DESTDIR)$(MANDIR)/man5 |
mkdir -p $(DESTDIR)$(MANDIR)/man5 |
mkdir -p $(DESTDIR)$(MANDIR)/man8 |
mkdir -p $(DESTDIR)$(MANDIR)/man8 |
$(INSTALL_PROGRAM) apropos $(DESTDIR)$(BINDIR) |
ln -f $(DESTDIR)$(BINDIR)/mandoc $(DESTDIR)$(BINDIR)/apropos |
ln -f $(DESTDIR)$(BINDIR)/apropos $(DESTDIR)$(BINDIR)/whatis |
ln -f $(DESTDIR)$(BINDIR)/mandoc $(DESTDIR)$(BINDIR)/whatis |
$(INSTALL_PROGRAM) makewhatis $(DESTDIR)$(SBINDIR) |
$(INSTALL_PROGRAM) makewhatis $(DESTDIR)$(SBINDIR) |
$(INSTALL_MAN) apropos.1 $(DESTDIR)$(MANDIR)/man1 |
$(INSTALL_MAN) apropos.1 $(DESTDIR)$(MANDIR)/man1 |
ln -f $(DESTDIR)$(MANDIR)/man1/apropos.1 \ |
ln -f $(DESTDIR)$(MANDIR)/man1/apropos.1 \ |
Line 450 www-install: www |
|
Line 362 www-install: www |
|
$(INSTALL_DATA) mdocml.sha256 \ |
$(INSTALL_DATA) mdocml.sha256 \ |
$(DESTDIR)$(HTDOCDIR)/snapshots/mdocml-$(VERSION).sha256 |
$(DESTDIR)$(HTDOCDIR)/snapshots/mdocml-$(VERSION).sha256 |
|
|
|
Makefile.local config.h: configure ${TESTSRCS} |
|
@echo "$@ is out of date; please run ./configure" |
|
@exit 1 |
|
|
depend: config.h |
depend: config.h |
mkdep -f Makefile.depend $(CFLAGS) $(SRCS) |
mkdep -f Makefile.depend $(CFLAGS) $(SRCS) |
perl -e 'undef $$/; $$_ = <>; s|/usr/include/\S+||g; \ |
perl -e 'undef $$/; $$_ = <>; s|/usr/include/\S+||g; \ |
s|\\\n||g; s| +| |g; print;' Makefile.depend > Makefile.tmp |
s|\\\n||g; s| +| |g; s| $$||mg; print;' \ |
|
Makefile.depend > Makefile.tmp |
mv Makefile.tmp Makefile.depend |
mv Makefile.tmp Makefile.depend |
|
|
libmandoc.a: $(COMPAT_OBJS) $(LIBMANDOC_OBJS) |
libmandoc.a: $(COMPAT_OBJS) $(LIBMANDOC_OBJS) |
$(AR) rs $@ $(COMPAT_OBJS) $(LIBMANDOC_OBJS) |
$(AR) rs $@ $(COMPAT_OBJS) $(LIBMANDOC_OBJS) |
|
|
mandoc: $(MANDOC_OBJS) libmandoc.a |
mandoc: $(MAN_OBJS) libmandoc.a |
$(CC) $(LDFLAGS) -o $@ $(MANDOC_OBJS) libmandoc.a |
$(CC) $(LDFLAGS) -o $@ $(MAN_OBJS) libmandoc.a $(DBLIB) |
|
|
makewhatis: $(MAKEWHATIS_OBJS) libmandoc.a |
makewhatis: $(MAKEWHATIS_OBJS) libmandoc.a |
$(CC) $(LDFLAGS) -o $@ $(MAKEWHATIS_OBJS) libmandoc.a $(DBLIB) |
$(CC) $(LDFLAGS) -o $@ $(MAKEWHATIS_OBJS) libmandoc.a $(DBLIB) |
|
|
preconv: $(PRECONV_OBJS) |
|
$(CC) $(LDFLAGS) -o $@ $(PRECONV_OBJS) |
|
|
|
manpage: $(MANPAGE_OBJS) libmandoc.a |
manpage: $(MANPAGE_OBJS) libmandoc.a |
$(CC) $(LDFLAGS) -o $@ $(MANPAGE_OBJS) libmandoc.a $(DBLIB) |
$(CC) $(LDFLAGS) -o $@ $(MANPAGE_OBJS) libmandoc.a $(DBLIB) |
|
|
apropos: $(APROPOS_OBJS) libmandoc.a |
|
$(CC) $(LDFLAGS) -o $@ $(APROPOS_OBJS) libmandoc.a $(DBLIB) |
|
|
|
man.cgi: $(CGI_OBJS) libmandoc.a |
man.cgi: $(CGI_OBJS) libmandoc.a |
$(CC) $(LDFLAGS) $(STATIC) -o $@ $(CGI_OBJS) libmandoc.a $(DBLIB) |
$(CC) $(LDFLAGS) $(STATIC) -o $@ $(CGI_OBJS) libmandoc.a $(DBLIB) |
|
|
Line 485 mdocml.sha256: mdocml.tar.gz |
|
Line 396 mdocml.sha256: mdocml.tar.gz |
|
|
|
mdocml.tar.gz: $(DISTFILES) |
mdocml.tar.gz: $(DISTFILES) |
mkdir -p .dist/mdocml-$(VERSION)/ |
mkdir -p .dist/mdocml-$(VERSION)/ |
$(INSTALL_SOURCE) $(DISTFILES) .dist/mdocml-$(VERSION) |
$(INSTALL) -m 0644 $(DISTFILES) .dist/mdocml-$(VERSION) |
chmod 755 .dist/mdocml-$(VERSION)/configure |
chmod 755 .dist/mdocml-$(VERSION)/configure |
( cd .dist/ && tar zcf ../$@ mdocml-$(VERSION) ) |
( cd .dist/ && tar zcf ../$@ mdocml-$(VERSION) ) |
rm -rf .dist/ |
rm -rf .dist/ |
|
|
config.h: configure config.h.pre config.h.post $(TESTSRCS) |
|
rm -f config.log |
|
CC="$(CC)" CFLAGS="$(CFLAGS)" DBLIB="$(DBLIB)" \ |
|
VERSION="$(VERSION)" ./configure |
|
|
|
.PHONY: base-install cgi-install db-install install www-install |
.PHONY: base-install cgi-install db-install install www-install |
.PHONY: clean depend |
.PHONY: clean distclean depend |
.SUFFIXES: .1 .3 .5 .7 .8 .h |
.SUFFIXES: .1 .3 .5 .7 .8 .h |
.SUFFIXES: .1.html .3.html .5.html .7.html .8.html .h.html |
.SUFFIXES: .1.html .3.html .5.html .7.html .8.html .h.html |
|
|