# -*- makefile -*- ## PSPP - a program for statistical analysis. ## Copyright (C) 2020 Free Software Foundation, Inc. ## ## This program is free software: you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by ## the Free Software Foundation, either version 3 of the License, or ## (at your option) any later version. ## ## This program is distributed in the hope that it will be useful, ## but WITHOUT ANY WARRANTY; without even the implied warranty of ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ## GNU General Public License for more details. ## ## You should have received a copy of the GNU General Public License ## along with this program. If not, see . # This makefile is used to generate the artifacts needed by the # user manual. # In order to get this makefile to work there are several programs # which need to be found on $PATH. Using debian 10.5 you can install # these with: # apt-get install xdotool xvfb imagemagick x11-apps # and optionally: # apt-get install xserver-xephyr MKDIR_P=%MKDIR_P% top_srcdir=%top_srcdir% abs_builddir=%abs_builddir% src_ui_gui_psppiredir=%src_ui_gui_psppiredir% IMAGES=%IMAGES% UI_FILES=%UI_FILES% all: $(IMAGES) ## The ui files must be installed in order for screenshots to succeed installed_ui_files=${subst src/ui/gui,$(src_ui_gui_psppiredir),$(UI_FILES)} src/ui/gui/psppire: $(MAKE) -f Makefile $@ XSERVER?=xvfb # Generate a X11 window dump based on a .grab file # Default theme for web pages $(top_srcdir)/doc/screenshots/%-ad.xwd: src/ui/gui/psppire $(top_srcdir)/doc/screengrab $(top_srcdir)/doc/screenshots/%.grab $(installed_ui_files) @$(MKDIR_P) ${dir $@} bash ${word 2,$^} --application=$< --topsrcdir=$(top_srcdir) --x-server=$(XSERVER) --theme=Adwaita --payload=${word 3,$^} $@ # High Contrast theme for printed manuals $(top_srcdir)/doc/screenshots/%-hc.xwd: src/ui/gui/psppire $(top_srcdir)/doc/screengrab $(top_srcdir)/doc/screenshots/%.grab $(installed_ui_files) @$(MKDIR_P) ${dir $@} bash ${word 2,$^} --application=$< --topsrcdir=$(top_srcdir) --x-server=$(XSERVER) --theme=HighContrast --payload=${word 3,$^} $@ .PRECIOUS: $(top_srcdir)/doc/screenshots/%-ad.xwd $(top_srcdir)/doc/screenshots/%-hc.xwd %.png: %.xwd convert -strip $< $@ %.eps: %.xwd convert -strip $< $@,tmp.eps sed -e '/^%%CreationDate: /d' -e '/^%%Title: /s|$(top_srcdir)/||' $@,tmp.eps > $@ $(src_ui_gui_psppiredir)/%.ui: $(top_srcdir)/src/ui/gui/%.ui @$(MKDIR_P) ${dir $@} cp $< $@ # Syntax examples src/ui/terminal/pspp: $(MAKE) -f Makefile $@ .PHONY: md5 md5: (cd $(top_srcdir)/doc/screenshots; md5sum *.xwd) .PHONY: clean clean: $(RM) $(IMAGES) $(RM) $(top_srcdir)/doc/screenshots/*.xwd