Skip to content

Commit f43b35f

Browse files
committed
Makefile: install manpages
closes sabotage-linux#8
1 parent f424ac3 commit f43b35f

File tree

1 file changed

+64
-15
lines changed

1 file changed

+64
-15
lines changed

GNUmakefile

Lines changed: 64 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,9 @@ PREFIX=/usr/local
1515
BINDIR=$(PREFIX)/bin
1616
LIBDIR=$(PREFIX)/lib
1717
INCDIR=$(PREFIX)/include
18+
MANDIR=$(PREFIX)/share/man
19+
MAN1DIR=$(MANDIR)/man1
20+
MAN3DIR=$(MANDIR)/man3
1821

1922
-include config.mak
2023

@@ -56,6 +59,7 @@ CLEANFILES+=tic/hash.c
5659
TIC_OBJS=$(TIC_SRCS:.c=.o)
5760
TIC_HOBJS=$(TIC_SRCS:.c=.ho)
5861
TOOL_TIC=$(TOOL_HOSTTIC)
62+
TIC_MAN=$(sort $(wildcard tic/*.1))
5963

6064
TI_SRCS= libterminfo/term.c libterminfo/ti.c libterminfo/setupterm.c \
6165
libterminfo/curterm.c libterminfo/tparm.c libterminfo/tputs.c
@@ -68,6 +72,7 @@ TI_LIBA=libterminfo/libterminfo.a
6872
TI_LIBSO=libterminfo/libterminfo$(SO_SUFFIX)
6973
TI_OBJS=$(TI_SRCS:.c=.o)
7074
TI_LOBJS=$(TI_SRCS:.c=.lo)
75+
TI_MAN =$(sort $(wildcard libterminfo/*.3))
7176

7277
libterminfo/term.o: CPPFLAGS+=-DINSTALL_PREFIX=\"$(PREFIX)\"
7378
libterminfo/term.lo: CPPFLAGS+=-DINSTALL_PREFIX=\"$(PREFIX)\"
@@ -101,6 +106,7 @@ CU_OBJS=$(CU_SRCS:.c=.o)
101106
CU_LIBA=libcurses/libcurses.a
102107
CU_LIBSO=libcurses/libcurses$(SO_SUFFIX)
103108
CU_LOBJS=$(CU_SRCS:.c=.lo)
109+
CU_MAN =$(sort $(wildcard libcurses/*.3))
104110

105111
PA_SRCS_ = _deck.c above.c below.c bottom.c del.c getuser.c hidden.c
106112
PA_SRCS_+= hide.c move.c new.c replace.c setuser.c show.c top.c
@@ -111,15 +117,10 @@ PA_OBJS=$(PA_SRCS:.c=.o)
111117
PA_LIBA=libpanel/libpanel.a
112118
PA_LIBSO=libpanel/libpanel$(SO_SUFFIX)
113119
PA_LOBJS=$(PA_SRCS:.c=.lo)
114-
PA_MAN_=move_panel.3 new_panel.3 panel.3 panel_above.3 panel_hidden.3 \
115-
panel_userptr.3 update_panels.3
120+
PA_MAN =$(sort $(wildcard libpanel/*.3))
116121

117122
ME_SRCS_=menu.c item.c userptr.c internals.c driver.c post.c attributes.c
118-
ME_MAN= menu_attributes.3 menu_item_name.3 menu_items.3 menu_userptr.3 \
119-
menu_cursor.3 menu_item_new.3 menu_mark.3 menu_win.3 menu_driver.3 \
120-
menu_item_opts.3 menu_new.3 menus.3 menu_format.3 menu_item_userptr.3 \
121-
menu_opts.3 menu_hook.3 menu_item_value.3 menu_pattern.3 \
122-
menu_item_current.3 menu_item_visible.3 menu_post.3
123+
ME_MAN = $(sort $(wildcard libmenu/*.3))
123124
ME_SRCS=$(patsubst %,libmenu/%,$(ME_SRCS_))
124125
ME_INCS=libmenu/menu.h libmenu/eti.h
125126
ME_OBJS=$(ME_SRCS:.c=.o)
@@ -130,12 +131,7 @@ ME_LOBJS=$(ME_SRCS:.c=.lo)
130131
FO_SRCS_=driver.c field_types.c internals.c field.c form.c post.c type_alnum.c \
131132
type_alpha.c type_integer.c type_numeric.c type_enum.c type_regex.c \
132133
type_ipv4.c type_ipv6.c
133-
FO_MAN= form_cursor.3 form_data.3 form_driver.3 form_field.3 \
134-
form_field_attributes.3 form_field_buffer.3 form_field_info.3 \
135-
form_field_just.3 form_field_new.3 form_field_opts.3 \
136-
form_field_userptr.3 form_field_validation.3 form_fieldtype.3 \
137-
form_hook.3 form_new.3 form_new_page.3 form_opts.3 form_page.3 \
138-
form_post.3 form_userptr.3 form_win.3 forms.3
134+
FO_MAN= $(sort $(wildcard libform/*.3))
139135
FO_SRCS=$(patsubst %,libform/%,$(FO_SRCS_))
140136
FO_INCS=libform/form.h
141137
FO_OBJS=$(FO_SRCS:.c=.o)
@@ -146,15 +142,19 @@ FO_LOBJS=$(FO_SRCS:.c=.lo)
146142
TS_SRCS_=map.c misc.c set.c term.c tset.c
147143
TS_SRCS=$(patsubst %,tset/%,$(TS_SRCS_))
148144
TS_OBJS=$(TS_SRCS:.c=.o)
145+
TS_MAN= $(sort $(wildcard tset/*.1))
149146

150147
TP_SRCS=tput/tput.c
151148
TP_OBJS=tput/tput.o
149+
TP_MAN =$(sort $(wildcard tput/*.1))
152150

153151
IC_SRCS=infocmp/infocmp.c
154152
IC_OBJS=infocmp/infocmp.o
153+
IC_MAN =$(sort $(wildcard infocmp/*.1))
155154

156155
TA_SRCS=tabs/tabs.c
157156
TA_OBJS=tabs/tabs.o
157+
TA_MAN =$(sort $(wildcard tabs/*.1))
158158

159159
STALIBS=$(TI_LIBA) $(CU_LIBA) $(PA_LIBA) $(ME_LIBA) $(FO_LIBA)
160160
DYNLIBS=$(TI_LIBSO) $(CU_LIBSO) $(PA_LIBSO) $(ME_LIBSO) $(FO_LIBSO)
@@ -285,7 +285,51 @@ install-pc-form: install-pc-dir
285285

286286
install-pcs: install-pc-form install-pc-menu install-pc-panel install-pc-terminfo install-pc-curses
287287

288-
install: install-headers install-libs install-progs install-pcs
288+
INSTALL_MANPAGES_COMMAND=test -L $< && $(INSTALL) -Dl `readlink $<` $@ || $(INSTALL) -Dm 644 $< $@
289+
290+
$(DESTDIR)$(MAN1DIR)/%: tic/%
291+
$(INSTALL_MANPAGES_COMMAND)
292+
$(DESTDIR)$(MAN1DIR)/%: tset/%
293+
$(INSTALL_MANPAGES_COMMAND)
294+
$(DESTDIR)$(MAN1DIR)/%: tput/%
295+
$(INSTALL_MANPAGES_COMMAND)
296+
$(DESTDIR)$(MAN1DIR)/%: infocmp/%
297+
$(INSTALL_MANPAGES_COMMAND)
298+
$(DESTDIR)$(MAN1DIR)/%: tabs/%
299+
$(INSTALL_MANPAGES_COMMAND)
300+
301+
$(DESTDIR)$(MAN3DIR)/%: libterminfo/%
302+
$(INSTALL_MANPAGES_COMMAND)
303+
$(DESTDIR)$(MAN3DIR)/%: libcurses/%
304+
$(INSTALL_MANPAGES_COMMAND)
305+
$(DESTDIR)$(MAN3DIR)/%: libpanel/%
306+
$(INSTALL_MANPAGES_COMMAND)
307+
$(DESTDIR)$(MAN3DIR)/%: libmenu/%
308+
$(INSTALL_MANPAGES_COMMAND)
309+
$(DESTDIR)$(MAN3DIR)/%: libform/%
310+
$(INSTALL_MANPAGES_COMMAND)
311+
312+
install-man-tic: $(TIC_MAN:tic/%=$(DESTDIR)$(MAN1DIR)/%)
313+
install-man-tset: $(TS_MAN:tset/%=$(DESTDIR)$(MAN1DIR)/%)
314+
install-man-tput: $(TP_MAN:tput/%=$(DESTDIR)$(MAN1DIR)/%)
315+
install-man-infocmp: $(IC_MAN:infocmp/%=$(DESTDIR)$(MAN1DIR)/%)
316+
install-man-tabs: $(TA_MAN:tabs/%=$(DESTDIR)$(MAN1DIR)/%)
317+
318+
install-prog-manpages: install-man-tic install-man-tset install-man-tput \
319+
install-man-infocmp install-man-tabs
320+
321+
install-man-terminfo: $(TI_MAN:libterminfo/%=$(DESTDIR)$(MAN3DIR)/%)
322+
install-man-curses: $(CU_MAN:libcurses/%=$(DESTDIR)$(MAN3DIR)/%)
323+
install-man-panel: $(PA_MAN:libpanel/%=$(DESTDIR)$(MAN3DIR)/%)
324+
install-man-menu: $(ME_MAN:libmenu/%=$(DESTDIR)$(MAN3DIR)/%)
325+
install-man-form: $(FO_MAN:libform/%=$(DESTDIR)$(MAN3DIR)/%)
326+
327+
install-lib-manpages: install-man-terminfo install-man-curses \
328+
install-man-panel install-man-menu install-man-form
329+
330+
install-manpages: install-prog-manpages install-lib-manpages
331+
332+
install: install-headers install-libs install-progs install-pcs install-manpages
289333

290334
install-static: install-headers install-progs install-pcs install-stalibs
291335
install-dynamic: TI_LINKLIB=$(TI_LIBSO)
@@ -499,4 +543,9 @@ $(FO_LIBSO): $(FO_LOBJS)
499543
install-dynlib-panel install-dynlib-menu install-dynlib-form \
500544
install-dynlibs install-libs install-pc-dir install-pc-curses \
501545
install-pc-terminfo install-pc-panel install-pc-menu \
502-
install-pc-form install-pcs install-static install-dynamic clean
546+
install-pc-form install-pcs install-static install-dynamic clean \
547+
install-man-tic install-man-tset install-man-tput \
548+
install-man-infocmp install-man-tabs install-prog-manpages \
549+
install-man-terminfo install-man-curses install-man-panel \
550+
install-man-menu install-man-form install-lib-manpages \
551+
install-manpages

0 commit comments

Comments
 (0)