makefile.in 16.5 KB
Newer Older
1
# $LynxId: makefile.in,v 1.173 2018/07/08 10:56:19 tom Exp $
2 3 4 5 6 7 8 9 10 11 12
##makefile for lynx

SHELL		= @CONFIG_SHELL@
CDPATH		= .

.SUFFIXES:
@SET_MAKE@
prefix		= @prefix@
exec_prefix	= @exec_prefix@
top_srcdir	= @top_srcdir@
srcdir		= @srcdir@
13
builddir	= .
14 15 16 17 18 19 20
VPATH		= $(srcdir)

CC		= @CC@
CFLAGS		= @CFLAGS@
DEFS		= @DEFS@
CPPFLAGS	= @CPPFLAGS@
LINT		= @LINT@
21
ETAGS		= @ETAGS@
22

23 24 25 26 27 28 29 30
BUILD_CC	= @BUILD_CC@
BUILD_CPP	= @BUILD_CPP@
BUILD_CFLAGS	= @BUILD_CFLAGS@
BUILD_CPPFLAGS	= @BUILD_CPPFLAGS@ @DEFS@
BUILD_EXEEXT	= @BUILD_EXEEXT@
BUILD_LDFLAGS	= @BUILD_LDFLAGS@
BUILD_LIBS	= @BUILD_LIBS@

31 32 33
x		= @EXEEXT@
o		= .@OBJEXT@

34
LDFLAGS		= @EXTRA_LDFLAGS@ @LDFLAGS@
35 36 37 38 39
LIBS		= @LIBS@

INSTALL		= @INSTALL@
INSTALL_PROGRAM	= @INSTALL_PROGRAM@
INSTALL_DATA	= @INSTALL_DATA@
40

41 42
LN_S		= @LN_S@

43 44 45 46
TAR		= @TAR@
TAR_UP		= $(TAR) @TAR_UP_OPTIONS@ @TAR_PIPE_OPTIONS@
TAR_DOWN	= $(TAR) @TAR_DOWN_OPTIONS@ @TAR_PIPE_OPTIONS@

47
# $Format: "LYNX_VERSION	= $ProjectVersion$"$
48
LYNX_VERSION	= 2.8.9rel.1
49

50 51
## This is the version which we are developing (or, upon release, make this
## the same).  Use no dots in the name, since it must work on VMS and MS-DOS.
52
VERSION		= 2-8-9
53 54

##this is the name of the directory the lynx source code is in.
55
##(e.g., lynx2-8-9, not the full path)
56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71
lynxdir= lynx$(VERSION)
lynxname= lynx$(VERSION)

## The 'DESTDIR' variable allows you to install the program into a different
## location, e.g., for packaging, without affecting the compiled-in pathnames.
DESTDIR= @DESTDIR@

## Where you want lynx installed
bindir= @bindir@
BINDIR= $(DESTDIR)$(bindir)

## Where you want the lynx man file installed
mandir= @mandir@/man1
MANDIR= $(DESTDIR)$(mandir)

## Where you want the lynx.cfg file installed
72 73
sysconfdir= @sysconfdir@
SYSCONFDIR= $(DESTDIR)$(sysconfdir)
74 75

## Where you want the doc-files installed
76
datarootdir= @datarootdir@
77 78
docdir    = @datadir@/lynx_doc
DOCDIR    = $(DESTDIR)$(docdir)
79 80

## Where you want the help-files installed
81 82
helpdir   = @datadir@/lynx_help
HELPDIR   = $(DESTDIR)$(helpdir)
83 84 85 86

##set the relative location of the WWW library Implementation directory,
##from this directory
##do not set this to be an absolute path!!!
87 88 89 90 91 92 93 94 95 96 97 98 99 100
WWW_DIR   = $(builddir)/WWW/Library/Implementation

##set the relative location of the message-file directory
##do not set this to be an absolute path!!!
PO_DIR    = $(builddir)/po
PO_SRCDIR = $(srcdir)/po

##set the relative location of the main source-directory
##do not set this to be an absolute path!!!
SRC_DIR   = $(builddir)/src

##set the relative location of the character-translation data directory
##do not set this to be an absolute path!!!
CHR_DIR   = $(SRC_DIR)/chrtrans
101 102 103 104 105 106 107

## Path to gzip that will compress the help files.
## It will be used when --enable-gzip-help is set by configure.
## Leave *both* empty if you don't want to gzip help files.
COMPRESS_PROG=@COMPRESS_PROG@
COMPRESS_EXT=@COMPRESS_EXT@

108 109 110
# Path of scripts directory
scripts_dir=$(srcdir)/scripts

111
MAKE_RECUR = $(MAKE) @cf_cv_makeflags@ DESTDIR="$(DESTDIR)" CC="$(CC)"
112

113 114
@LYNXCFG_MAKE@CFG2HTML = alphatoc.html body.html cattoc.html

115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140
# !!!!!!!!!!! SUN resolv LIBRARY !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
# To include resolv in the LIBS="" list for SUN 3, 4 or Solaris OS,
# point RESOLVLIB to that library.  You need this if you get the message
# "Alert!:  Unable to connect to remote host" whenever you try to
# access a host other than localhost and have made Lynx without it.
# See the PROBLEMS file for more information.
#RESOLVLIB= -lresolv

# !!!!!!!!!!!!!  DIRECT WAIS ACCESS !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
# If you are adding direct wais access you must fill in the
# location of wais.a, client.a and the standard math library, libm.a.
# You can pick up the most current freeWAIS sources from
#	ftp://ftp.cnidr.org/pub/NIDR.tools/freewais
# If you are using freeWAIS-0.202 or older, include -DDECLARE_WAIS_LOGFILES
# in your SITE_DEFS.
# Please put an ABSOLUTE address here if you want it to work!
#WAISLIB= ../../freeWAIS-0.202/bin/client.a ../../freeWAIS-0.202/bin/wais.a /usr/lib/libm.a

# !!!!!!!!!!!!! SLANG Support (For color version of Lynx). !!!!!!!!!!!!!!!!
# The slang library is an alternative to curses, developed by John E. Davis
# (davis@space.mit.edu).  Version 0.99-27 or higher is available from
#	ftp://space.mit.edu/pub/davis
# It provides color support for Lynx.

# !!!!!!!!!!!!! NCURSES Support (For color version of Lynx). !!!!!!!!!!!!!!
# If you need ncurses, the latest version can always be found
141
# in ftp://ftp.invisible-island.net/ncurses/
142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159
# or ftp://ftp.gnu.org/pub/gnu/

# Also be sure to check out the compilation symbols in userdefs.h
# before building Lynx!

# If you apply patches which require linking to site-specific libraries, set
# SITE_LIBS to those libraries.
SITE_LIBS= # Your libraries here

# Set SITE_LYDEFS to one or more of the defines for the WWW Library:
SITE_LYDEFS = # Your defines here

# Set SITE_DEFS to one or more of the defines for lynx below:
SITE_DEFS = # Your defines here

# defines for which there are no configure options:
# -DIGNORE_CTRL_C  Define if Control-C shouldn't exit lynx.
# -DNO_RULES       Disables CERN-style access rules (see lynx.cfg).
160
# -DUSE_VASPRINT   Use vasprintf() function
161 162 163 164 165 166 167 168 169 170 171
#
# if you are linking to freeWAIS-0.202 or older, you should define this
# in SITE_DEFS
#
# -DDECLARE_WAIS_LOGFILES
#
# if you have an SVR4 system with the "type any key" problem, try defining
# this in LYFLAGS (SITE_LYDEFS) and SITE_DEFS
#
# -DSVR4_BSDSELECT
#
172
# Many other defines have configure options  (see INSTALLATION, Section II-1c.):
173 174 175
#
# for installation of local execution links, please see the file userdefs.h

176 177 178 179 180
WWW_CFLAGS = \
	LY_CFLAGS="$(CFLAGS)" \
	CPPFLAGS="$(CPPFLAGS)" \
	LYFLAGS="$(SITE_LYDEFS)"

181 182 183 184 185 186 187 188
CHR_CFLAGS = \
	SITE_DEFS="$(SITE_DEFS)" \
	BUILD_CFLAGS="$(BUILD_CFLAGS)" \
	BUILD_CPPFLAGS="$(BUILD_CPPFLAGS)" \
	BUILD_LDFLAGS="$(BUILD_LDFLAGS)" \
	BUILD_LIBS="$(BUILD_LIBS)" \
	BUILD_CC="$(BUILD_CC)"

189 190 191
SRC_CFLAGS = \
	CFLAGS="$(CFLAGS)" \
	CPPFLAGS="$(CPPFLAGS)" \
192
	LDFLAGS="$(LDFLAGS)" \
193 194
	LIBS="$(LIBS) $(RESOLVLIB) $(WAISLIB) $(SITE_LIBS)" \
	SITE_DEFS="$(SITE_DEFS)" \
195 196
	WWWINC=$(WWW_DIR) \
	WWWLIB="../$(WWW_DIR)/libwww.a"
197

198
actual_PROG  = `echo lynx|sed '@program_transform_name@'`
199 200
binary_PROG  = $(actual_PROG)$x

201
all lynx$x: cfg_defs.h LYHelp.h
202
@MSG_DIR_MAKE@	$(SHELL) $(scripts_dir)/fixtext.sh $(srcdir)/LYMessages_en.h >LYMessages.c
203 204
@MSG_DIR_MAKE@	cd $(PO_DIR) && $(MAKE_RECUR)
	cd $(WWW_DIR) && $(MAKE_RECUR) $(WWW_CFLAGS)
205
	cd $(CHR_DIR) && $(MAKE_RECUR) all $(CHR_CFLAGS)
206
	cd $(SRC_DIR) && $(MAKE_RECUR) all $(SRC_CFLAGS)
207 208

lint:
209 210
	cd $(WWW_DIR) && $(MAKE_RECUR) LINT="$(LINT)" $(WWW_CFLAGS) $@
	cd $(SRC_DIR) && $(MAKE_RECUR) LINT="$(LINT)" $(SRC_CFLAGS) $@
211
	cd $(CHR_DIR) && $(MAKE_RECUR) LINT="$(LINT)" $@
212

213 214 215 216 217 218 219 220
tags:
	cd $(WWW_DIR) && $(MAKE_RECUR) $(WWW_CFLAGS) $@
	cd $(SRC_DIR) && $(MAKE_RECUR) $(SRC_CFLAGS) $@
	cd $(CHR_DIR) && $(MAKE_RECUR) $@

etags:
	$(ETAGS) *.[ch] */*.[ch] */*/*.[ch] */*/*/*.[ch]

221 222 223 224
help:
	@echo
	@echo "Please run make with one of the following arguments"
	@echo "all        -- to make the executable, put it in this directory"
225
	@echo "clean      -- removes all '$o' and 'core' files"
226
	@echo "distclean  -- removes all generated files"
227 228 229 230 231 232 233
	@echo "depend     -- use makedepend to generate header-dependencies"
	@echo

##Miscellaneous actions
clean:
	rm -f WWW/Library/*/*.[aoib]
	rm -f WWW/Library/*/.created
234 235
	cd $(WWW_DIR) && $(MAKE_RECUR) $@
	cd $(SRC_DIR) && $(MAKE_RECUR) $@
236
@MSG_DIR_MAKE@	rm -f LYMessages.c
237 238
@MSG_DIR_MAKE@	cd $(PO_DIR) && $(MAKE_RECUR) $@
	rm -f *.b $(SRC_DIR)/lynx$x *.leaks cfg_defs.h LYHelp.h lint.*
239
@LYNXCFG_MAKE@	-rm -f $(CFG2HTML)
240 241 242 243
	rm -f help_files.sed
	rm -f core *.core

depend: cfg_defs.h LYHelp.h
244 245
	cd $(WWW_DIR) && $(MAKE_RECUR) $@
	cd $(SRC_DIR) && $(MAKE_RECUR) $@
246 247 248 249

distclean: clean
	-rm -f WWW/Library/*/*~
	-rm -f WWW/Library/*/*.bak
250 251 252 253 254 255
	-rm -rf $(SRC_DIR)/obsolete
	-cd $(WWW_DIR) && $(MAKE_RECUR) $@
	-cd $(SRC_DIR) && $(MAKE_RECUR) $@
	-cd $(CHR_DIR) && $(MAKE_RECUR) $@
@MSG_DIR_MAKE@	cd $(PO_DIR) && $(MAKE_RECUR) $@
@MSG_DIR_MAKE@	-rmdir $(PO_DIR)
256
	-rm -f *~ *.bak *.sav tags TAGS
257 258 259
	-rm -f $(WWW_DIR)/makefile $(SRC_DIR)/makefile $(CHR_DIR)/makefile
@SRCDIR_CLEAN@	-rmdir $(WWW_DIR) && rmdir WWW/Library && rmdir WWW
@SRCDIR_CLEAN@	-rmdir $(CHR_DIR) && rmdir $(SRC_DIR)
260
	-rm -f makefile lynx_cfg.h config.status config.log config.cache
261
	-rm -f lynx$x
262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278

maintainer-clean: distclean
	-find . -type f -name '*.rej' -exec rm -f {} \;
	-find . -type f -name '*.orig' -exec rm -f {} \;
	-rm -rf WWW/Library/*/obsolete
	-rm -f Lynx.prj .*_aux

# Directory containing reference source for patch generation,
#     either absolute or relative to $(top_srcdir)/..
REFDIR=orig/$(lynxdir)

lynx.patch: $(top_srcdir) $(top_srcdir)/CHANGES
	- cd $(top_srcdir)/.. && cd $(REFDIR) && { rm -f \
		config.log \
		config.status \
		lynx_cfg.h \
			; \
279
		for I in . $(SRC_DIR) $(WWW_DIR); do ( set +e; \
280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299
			( set -x; cd $$I && rm -f *.orig *.rej makefile ); : ); \
		done; }
	( cd $(top_srcdir)/..; echo "%%% Created `date` by target $@. %%%"; \
	   if diff -bru /dev/null /dev/null;		     \
		   then diff -bru $(REFDIR) $(lynxdir);	     \
		   else diff -brc $(REFDIR) $(lynxdir); fi ) \
		| grep -v '^Common' \
		| grep -v '^Binary files ' \
		| grep -v '^Only ' | tee $@ | egrep '^\-\-\- .*$(lynxdir)'

install: install-bin install-man install-cfg @INSTALL_LSS@
	@echo
	@echo "Use $(MAKE) install-help to install the help-files"
	@echo "Use $(MAKE) install-doc to install extra documentation files"
	@echo

install-full: install install-help install-doc
	@echo Full installation complete.

install-bin: $(BINDIR) lynx$x
300
@MSG_DIR_MAKE@	cd $(PO_DIR) && $(MAKE_RECUR) install
301 302 303
	@ECHO_CC@$(SHELL) -c "P=$(binary_PROG); \
	if test -f $(BINDIR)/$$P ; then \
	      mv -f $(BINDIR)/$$P $(BINDIR)/$$P.old; fi"
304
	$(INSTALL_PROGRAM) lynx$x $(BINDIR)/$(binary_PROG)
305 306

install-man : $(MANDIR)
307
	$(INSTALL_DATA) $(srcdir)/lynx.man $(MANDIR)/$(actual_PROG).1
308 309 310

install-doc : $(DOCDIR) $(HELPDIR)
	@echo Copying sample files
311 312 313 314 315 316 317
	$(SHELL) -c '\
		( umask 022; \
		  cd $(srcdir) && \
		  $(TAR_UP) C[HO]* PROBLEMS README docs samples test ) | \
		( umask 022; \
		  cd $(DOCDIR) && \
		  chmod -R u+w . && $(TAR_DOWN) )'
318 319 320
	$(SHELL) -c 'if test "$(COMPRESS_PROG)" != "" ; then \
		(cd $(DOCDIR) && $(COMPRESS_PROG) -f docs/CHANGES*.[0-9] docs/*.announce ) \
	fi'
321 322
	$(SHELL) -c 'for name in COPYING COPYHEADER; do \
		cd $(HELPDIR) && rm -f $$name ;\
323 324 325
		r= ;\
		test "$(LN_S)" = "ln -s" || r=`echo $(helpdir)|sed -e "s%[^/]\+%..%g" -e "s%^.%%"`; \
		cd $(HELPDIR) && ( $(LN_S) $$r$(docdir)/$$name . || cp $(DOCDIR)/$$name . );\
326
		done'
327
	-$(SHELL) -c 'case `id|sed -e "s/(.*//"` in uid=0) chown -R root $(DOCDIR);; esac'
328 329 330 331 332 333 334

# HPUX 'sed' does not seem to like '=' as pattern delimiter.
# We cannot use '%' because it may appear in a URL.
# Andrew filesystem uses '@'.
# So we limit sed delimiters to '!' and '%', depending on the expected text.
FIX_SED = tr '=' '"'

335
LYNX_URL='@HOMEPAGE_URL@release/breakout'
336 337
LYNXDOCS_URL='$(LYNX_URL)/docs/'
LYNXHELP_URL='$(LYNX_URL)/lynx_help/'
338

339 340 341 342 343 344
@LYNXCFG_MAKE@$(CFG2HTML) :
@LYNXCFG_MAKE@	@echo 'Making htmlized lynx.cfg'
@LYNXCFG_MAKE@	cd $(SRC_DIR) && $(MAKE_RECUR) LYReadCFG.i
@LYNXCFG_MAKE@	@-rm -f $(CFG2HTML)
@LYNXCFG_MAKE@	sed -n -e '/Config_Type  *Config_Table/,/{0, *0, *0}/ p' $(SRC_DIR)/LYReadCFG.i | \
@LYNXCFG_MAKE@	sed  -e 's/ *{ *"\([^"]*\)".*/\1/' | \
345
@LYNXCFG_MAKE@	perl $(scripts_dir)/cfg2html.pl -ams $(srcdir)/lynx.cfg
346 347
@LYNXCFG_MAKE@	-rm -f $(SRC_DIR)/LYReadCFG.i

348 349 350 351
help_files.sed : makefile $(srcdir)/lynx_help/help_files.txt
	@echo Constructing sed-script $@
	@-rm -f $@ help_files.tmp
	@cat $(srcdir)/lynx_help/help_files.txt > help_files.tmp
352
@LYNXDOC_MAKE@	@ECHO_CC@echo 's!$(LYNXDOCS_URL)!file://$(docdir)/!g' >> help_files.tmp
353 354 355 356 357
@LYNXCFG_MAKE@	@ECHO_CC@echo 's!$(LYNXHELP_URL)alphatoc.html!alphatoc.html!g' >> help_files.tmp
@LYNXCFG_MAKE@	@ECHO_CC@echo 's!$(LYNXHELP_URL)cattoc.html!cattoc.html!g' >> help_files.tmp
@LYNXCFG_MAKE@	@ECHO_CC@echo 's!alphatoc\.html!alphatoc.html$(COMPRESS_EXT)!g' >> help_files.tmp
@LYNXCFG_MAKE@	@ECHO_CC@echo 's!cattoc\.html!cattoc.html$(COMPRESS_EXT)!g' >> help_files.tmp
@LYNXCFG_MAKE@	@ECHO_CC@echo 's!body\.html!body.html$(COMPRESS_EXT)!g' >> help_files.tmp
358 359 360 361 362 363 364 365 366 367 368
	@ECHO_CC@sed	-e '/^#/d' -e '/^$$/d' \
		-e 's%\(.*\)=\(.*\@.*\)$$%s=@\1@=\2=g%' \
		-e 's%\(.*\)=\(http:.*\)$$%s=@\1@=\2=g%' \
		-e 's%\(.*\)=\(ftp:.*\)$$%s=@\1@=\2=g%' \
		-e 's%\(.*\)=\(.*\.html\)$$%s=@\1@=\2$(COMPRESS_EXT)=g%' \
		help_files.tmp | $(FIX_SED) > $@
	@echo Appending interim-fix for existing html files to $@
	@ECHO_CC@sed	-e '/^#/d' -e '/[:@]/d' -e '/^$$/d' \
		-e 's%\(.*\)=\(.*\.html\)$$%s=\2=\2$(COMPRESS_EXT)=g%' \
		-e 's%\.html=%\\.html=%' \
		help_files.tmp | $(FIX_SED) >> $@
369
	@ECHO_CC@if test -n "$(COMPRESS_EXT)"; then echo "s%\\(\$(COMPRESS_EXT)\\)*\$(COMPRESS_EXT)%$(COMPRESS_EXT)%g" >> $@; fi
370 371
	@-rm -f help_files.tmp

372
install-help : $(CFG2HTML) help_files.sed $(HELPDIR) $(SYSCONFDIR)
373 374 375 376 377 378
	-$(SHELL) -c 'if cd "$(HELPDIR)" ; then \
		WD=`pwd` ; \
		TAIL=`basename "$(helpdir)"` ; \
		HEAD=`echo "$$WD"|sed -e "s,/$${TAIL}$$,,"` ; \
		test "x$$WD" != "x$$HEAD" && rm -fr * ; \
		fi'
379
	test -d $(HELPDIR)/keystrokes || mkdir $(HELPDIR)/keystrokes
380
	@echo Translating/copying html files
381
@LYNXCFG_MAKE@	@$(SHELL) -c 'for f in $(CFG2HTML) ; do \
382
@LYNXCFG_MAKE@		sed -f help_files.sed $$f > $(HELPDIR)/$$f ; \
383
@LYNXCFG_MAKE@		done'
384 385 386 387
	@ECHO_CC@$(SHELL) -c 'sed_prog=`pwd`/help_files.sed && \
		cd $(srcdir)/lynx_help && \
		dirs=keystrokes && \
		files="*.html */*.html" && \
388
		for f in $$files ; do \
389 390
			sed -f $$sed_prog $$f > $(HELPDIR)/$$f ; \
		done && \
391 392
		if test "$(COMPRESS_PROG)" != "" ; then \
			(cd $(HELPDIR) && $(COMPRESS_PROG) $$files ) \
393
		fi'
394
	@echo Updating $(sysconfdir)/lynx.cfg
395 396
	@ECHO_CC@$(SHELL) -c \
	'if test -f $(SYSCONFDIR)/lynx.cfg ; then \
397
		mv $(SYSCONFDIR)/lynx.cfg $(SYSCONFDIR)/lynx.tmp ; \
398
	else \
399
		cp $(srcdir)/lynx.cfg $(SYSCONFDIR)/lynx.tmp ; \
400
	fi'
401
	@echo Updating $(sysconfdir)/lynx.cfg to point to installed help-files
402 403
	@ECHO_CC@sed	-e '/^HELPFILE:http/s!^!#!' \
		-e '/^#HELPFILE:file/s!#!!' \
404
		$(SYSCONFDIR)/lynx.tmp | \
405 406 407
	$(SHELL) $(scripts_dir)/cfg_path.sh lynx_help $(helpdir) | \
	$(SHELL) $(scripts_dir)/cfg_path.sh lynx_doc  $(helpdir) | \
	sed	-e '/^HELPFILE:file/s!$$!$(COMPRESS_EXT)!' \
408
		-e '/^HELPFILE:file/s!$(COMPRESS_EXT)$(COMPRESS_EXT)$$!$(COMPRESS_EXT)!' \
409 410 411
		>$(SYSCONFDIR)/lynx.cfg
	chmod 644 $(SYSCONFDIR)/lynx.cfg
	-rm -f $(SYSCONFDIR)/lynx.tmp
412

413
LYHelp.h : help_files.sed $(srcdir)/LYHelp.hin
414 415 416 417 418 419 420 421 422 423 424 425 426 427
	@echo Creating $@
	@sed -f help_files.sed $(srcdir)/LYHelp.hin > $@
	@echo '**********************************************'
	@echo
	@$(SHELL) -c 'if test "$(COMPRESS_PROG)" = "" ; then \
		echo "       Help files will NOT be gzipped."; \
	else \
		echo "       Help links point to compressed files"; \
		echo "       To access them properly you have to type"; \
		echo "                 make install-help"; \
	fi'
	@echo
	@echo '**********************************************'

428
cfg_defs.h : $(scripts_dir)/cfg_defs.sh $(scripts_dir)/cfg_edit.sh config.cache lynx_cfg.h
429
	@rm -f $@
430
	$(SHELL) -c 'SHELL=$(SHELL) $(SHELL) $(scripts_dir)/cfg_defs.sh $(srcdir)'
431

432 433
install-cfg : $(SYSCONFDIR)
	@$(SHELL) $(scripts_dir)/install-cfg.sh "$(INSTALL_DATA)" $(srcdir)/lynx.cfg $(SYSCONFDIR)/lynx.cfg
434

435
install-lss : $(SYSCONFDIR)
436
	@$(SHELL) $(scripts_dir)/install-lss.sh "$(INSTALL_DATA)" $(srcdir)/samples/lynx.lss $(SYSCONFDIR)/lynx.lss
437 438

uninstall ::
439
@MSG_DIR_MAKE@	cd $(PO_DIR) && $(MAKE_RECUR) uninstall
440 441
	-rm -f $(BINDIR)/$(binary_PROG)
	-rm -f $(MANDIR)/$(actual_PROG).1
442 443
	-rm -f $(SYSCONFDIR)/lynx.cfg
	-rm -f $(SYSCONFDIR)/lynx.lss
444 445 446

uninstall \
uninstall-help ::
447 448 449 450 451 452
	-$(SHELL) -c 'if test -d "$(HELPDIR)" ; then \
		WD=`cd "$(HELPDIR)" && pwd` ; \
		TAIL=`basename "$(helpdir)"` ; \
		HEAD=`echo "$$WD"|sed -e "s,/$${TAIL}$$,,"` ; \
		test "x$$WD" != "x$$HEAD" && rm -rf "$(HELPDIR)"; \
		fi'
453 454 455

uninstall \
uninstall-doc ::
456 457 458 459 460 461 462 463 464 465 466 467 468
	-$(SHELL) -c 'if test -d "$(DOCDIR)" ; then \
		WD=`cd "$(DOCDIR)" && pwd` ; \
		TAIL=`basename "$(docdir)"` ; \
		HEAD=`echo "$$WD"|sed -e "s,/$${TAIL}$$,,"` ; \
		test "x$$WD" != "x$$HEAD" && rm -rf "$(DOCDIR)"; \
		fi'
	-$(SHELL) -c 'if test -d "$(HELPDIR)" ; then \
		WD=`cd "$(HELPDIR)" && pwd` ; \
		TAIL=`basename "$(helpdir)"` ; \
		HEAD=`echo "$$WD"|sed -e "s,/'$${TAIL}'$$,,"` ; \
		test "x$$WD" != "x$$HEAD" ; \
		cd "$(HELPDIR)" && rm -f COPYING COPYHEADER ; \
		fi'
469

470 471 472 473
update-po:
	rsync -Lrtvz  translationproject.org::tp/latest/lynx/  $(PO_SRCDIR)
	test -f $(PO_SRCDIR)/makefile && cd $(PO_SRCDIR) && $(MAKE_RECUR) $@

474 475 476 477 478 479 480 481 482 483 484 485
preinstall :
	@ echo ''
	@ echo '** Configuration summary for LYNX $(LYNX_VERSION):'
	@ echo ''
	@ echo '       program name: '$(actual_PROG)
	@ echo ''
	@ echo '      bin directory: '$(BINDIR)
	@ echo '   config directory: '$(SYSCONFDIR)
	@ echo '      man directory: '$(MANDIR)
	@ echo '     help directory: '$(HELPDIR)
	@ echo '      doc directory: '$(DOCDIR)

486 487
$(BINDIR) \
$(MANDIR) \
488
$(SYSCONFDIR) \
489 490
$(HELPDIR) \
$(DOCDIR) :
491
	mkdir -p $@