LAUNCHD is an Automake conditional which means that Automake will traverse the privileged_startx directory when running the dist target. http://www.gnu.org/software/automake/manual/automake.html
Use sed for text substitution. Use SCOMAN Automake variable and groff .if for conditional text We can therefore remove ARCHMANDEFS Move man pages to their own directory Remove man page related code from cpprules.in Signed-off-by: Gaetan Nadon <[email protected]> --- Makefile.am | 21 +++++++-------------- configure.ac | 12 ++++++------ cpprules.in | 22 +--------------------- man/Makefile.am | 20 ++++++++++++++++++++ startx.man => man/startx.man | 11 ++++++----- xinit.man => man/xinit.man | 0 6 files changed, 40 insertions(+), 46 deletions(-) create mode 100644 man/Makefile.am rename startx.man => man/startx.man (98%) rename xinit.man => man/xinit.man (100%) diff --git a/Makefile.am b/Makefile.am index 2b8a4eb..f47b5d7 100644 --- a/Makefile.am +++ b/Makefile.am @@ -19,6 +19,11 @@ # TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR # PERFORMANCE OF THIS SOFTWARE. +SUBDIRS = man +if LAUNCHD +SUBDIRS += privileged_startx +endif + bin_PROGRAMS = xinit bin_SCRIPTS = startx @@ -29,14 +34,6 @@ xinit_LDADD = $(XINIT_LIBS) xinit_SOURCES = \ xinit.c -appmandir = $(APP_MAN_DIR) - -appman_PRE = \ - startx.man \ - xinit.man - -appman_DATA = $(appman_PRE:man=@APP_MAN_SUFFIX@) - include $(top_srcdir)/cpprules.in xinitrcdir = $(XINITDIR) @@ -65,18 +62,14 @@ $(launchdidprefix).startx.plist.cpp: org.x.startx.plist.cpp launchagents_PRE = $(launchdidprefix).startx.plist.cpp launchagents_DATA = $(launchagents_PRE:plist.cpp=plist) -SUBDIRS = privileged_startx endif -DIST_SUBDIRS = privileged_startx - xinitrc_DATA = xinitrc MAINTAINERCLEANFILES = ChangeLog INSTALL -CLEANFILES = xinitrc startx $(appman_DATA) $(launchagents_DATA) +CLEANFILES = xinitrc startx $(launchagents_DATA) -EXTRA_DIST = xinitrc.cpp startx.cpp org.x.startx.plist.cpp $(appman_PRE) \ - autogen.sh +EXTRA_DIST = xinitrc.cpp startx.cpp org.x.startx.plist.cpp .PHONY: ChangeLog INSTALL diff --git a/configure.ac b/configure.ac index 67214cb..d493e98 100644 --- a/configure.ac +++ b/configure.ac @@ -161,11 +161,10 @@ fi AC_SUBST(STARTX_COOKIE_FLAGS) # Additional substitutions in startx, xinitrc & man pages -ARCHMANDEFS="" SHELL_CMD="/bin/sh" XSERVERNAME="Xorg" XCONFIGFILE="xorg.conf" -XCONFIGFILEMAN='${XCONFIGFILE} (__filemansuffix__)' +XCONFIGFILEMAN='${XCONFIGFILE} (${FILE_MAN_SUFFIX})' case $host_os in cygwin*) XSERVERNAME="XWin" @@ -181,11 +180,11 @@ case $host_os in ;; *sco*) SHELL_CMD="/bin/ksh" - ARCHMANDEFS="-D__SCOMAN__" + SCOMAN=1 ;; esac AC_SUBST(SHELL_CMD) -AC_SUBST(ARCHMANDEFS) +AC_SUBST(SCOMAN) AC_SUBST(XSERVERNAME) AC_SUBST(XCONFIGFILE) AC_SUBST(XCONFIGFILEMAN) @@ -200,6 +199,7 @@ AC_SUBST(XAUTH) AC_SUBST(XINIT) AC_SUBST(XINITDIR) -AC_CONFIG_FILES([Makefile]) -AC_CONFIG_FILES([privileged_startx/Makefile]) +AC_CONFIG_FILES([Makefile + man/Makefile + privileged_startx/Makefile]) AC_OUTPUT diff --git a/cpprules.in b/cpprules.in index 18089de..92a987d 100644 --- a/cpprules.in +++ b/cpprules.in @@ -13,27 +13,7 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e '/XSLASHGLOB/s/XSLASHGLOB/\/\*/' \ -e '/\@\@$$/s/\@\@$$/\\/' -# Strings to replace in man pages -XORGRELSTRING = @PACKAGE_STRING@ - XORGMANNAME = X Version 11 - -MANDEFS = \ - -D__xorgversion__="\"$(XORGRELSTRING)\" \"$(XORGMANNAME)\"" \ - -D__appmansuffix__=$(APP_MAN_SUFFIX) \ - -D__filemansuffix__=$(FILE_MAN_SUFFIX) \ - -D__libmansuffix__=$(LIB_MAN_SUFFIX) \ - -D__miscmansuffix__=$(MISC_MAN_SUFFIX) \ - -D__XSERVERNAME__='$(XSERVERNAME)' \ - -D__XCONFIGFILE__='$(XCONFIGFILE)' \ - -D__XCONFIGFILEMAN__='$(XCONFIGFILEMAN)' \ - -D__xinitdir__=$(XINITDIR) \ - -D__bindir__=$(bindir) \ - -DSHELL_CMD=$(SHELL_CMD) $(ARCHMANDEFS) - -SUFFIXES = .$(APP_MAN_SUFFIX) .man .cpp +SUFFIXES = .cpp .cpp: $(AM_V_GEN)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ - -.man.$(APP_MAN_SUFFIX): - $(AM_V_GEN)$(RAWCPP) $(RAWCPPFLAGS) $(MANDEFS) $(EXTRAMANDEFS) < $< | $(CPP_SED_MAGIC) > $@ diff --git a/man/Makefile.am b/man/Makefile.am new file mode 100644 index 0000000..750a2ee --- /dev/null +++ b/man/Makefile.am @@ -0,0 +1,20 @@ + +appmandir = $(APP_MAN_DIR) +appman_PRE = startx.man xinit.man +appman_DATA = $(appman_PRE:man=$(APP_MAN_SUFFIX)) + +EXTRA_DIST = $(appman_PRE) +CLEANFILES = $(appman_DATA) +SUFFIXES = .$(APP_MAN_SUFFIX) .man + +# String replacements in MAN_SUBSTS now come from xorg-macros.m4 via configure +MAN_SUBSTS+= -e 's|__XSERVERNAME__|$(XSERVERNAME)|g' \ + -e 's|__XCONFIGFILE__|$(XCONFIGFILE)|g' \ + -e 's|__XCONFIGFILEMAN__|$(XCONFIGFILEMAN)|g' \ + -e 's|__xinitdir__|$(XINITDIR)|g' \ + -e 's|__bindir__|$(bindir)|g' \ + -e 's|__libdir__|$(libdir)|g' \ + -e 's|SCOMAN|$(SCOMAN)|g' + +.man.$(APP_MAN_SUFFIX): + $(AM_V_GEN)$(SED) $(MAN_SUBSTS) < $< > $@ diff --git a/startx.man b/man/startx.man similarity index 98% rename from startx.man rename to man/startx.man index 641a631..33d5665 100644 --- a/startx.man +++ b/man/startx.man @@ -74,7 +74,7 @@ startx -- -dpi 100 .PP startx -- -layout Multihead .RE -#ifdef __SCOMAN__ +.if 'SCOMAN'' .ig .PP To determine the client to run, .B startx @@ -90,7 +90,8 @@ looks for the following files, in order: .I __xinitdir__/xinitrc .RE .PP -#else +.. +.if !'x.SCOMAN'x.' .ig .PP To determine the client to run, .B startx @@ -102,7 +103,7 @@ the file in the .I xinit library directory. -#endif +.. If command line client options are given, they override this behavior and revert to the .BR xinit (__appmansuffix__) @@ -186,7 +187,7 @@ and .IR Xsecurity (__miscmansuffix__) manual pages for more information on X client/server authentication. .SH FILES -#ifdef __SCOMAN__ +.if 'SCOMAN'' .ig .TP 25 .I $(HOME)/.startxrc Client to run. Typically a shell script which runs many programs in @@ -196,7 +197,7 @@ the background. Client to use if the user has no .I .startxrc file. -#endif +.. .TP 25 .I $(HOME)/.xinitrc Client to run. Typically a shell script which runs many programs in diff --git a/xinit.man b/man/xinit.man similarity index 100% rename from xinit.man rename to man/xinit.man -- 1.6.0.4 _______________________________________________ [email protected]: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
