Implement -showMoveTime option
[xboard.git] / Makefile.am
index dd88170..a3051ba 100644 (file)
@@ -57,20 +57,20 @@ xboard_SOURCES = backend.c backend.h backendz.h \
 ###
 
 SUBDIRS = po
-xboard_LDADD = -lm @FRONTEND_LIBS@ @X_LIBS@ @LIBINTL@ @CAIRO_LIBS@
+xboard_LDADD = -ldl -lm @FRONTEND_LIBS@ @X_LIBS@ @LIBINTL@ @CAIRO_LIBS@
 
 EXTRA_DIST = pixmaps themes png sounds winboard \
        xboard.texi gpl.texinfo texi2man texinfo.tex xboard.man xboard.desktop xboard-config.desktop \
        xboard-fen-viewer.desktop  xboard-pgn-viewer.desktop  xboard-tourney.desktop xboard.xml \
        COPYRIGHT FAQ.html engine-intf.html ics-parsing.txt readme.htm zippy.README \
-       xboard.conf.in SHORTLOG DIFFSTAT history.c ABOUT-NLS $(FRONTENDextras)
+       xboard.conf SHORTLOG DIFFSTAT history.c ABOUT-NLS $(FRONTENDextras)
 
 DISTCLEANFILES = stamp-h
 
 GITVERSION=$(shell sh -c 'git describe --dirty --always 2>/dev/null')
 AM_CPPFLAGS=-DINFODIR='"$(infodir)"' @X_CFLAGS@ @CAIRO_CFLAGS@ @FRONTEND_CFLAGS@  -DSYSCONFDIR='"$(sysconfdir)"' \
            -DLOCALEDIR='"$(localedir)"' -DSVGDIR='"$(svgdir)"' -D__GIT_VERSION='"$(GITVERSION)"' \
-            -DCONFIGURE_OPTIONS='"@CONFIGURE_OPTIONS@"' $(headers)
+            -DCONFIGURE_OPTIONS='"@CONFIGURE_OPTIONS@"' -DDATADIR='"$(datadir)/games/xboard"' -DMANDIR='"$(mandir)"' $(headers)
 
 ACLOCAL_AMFLAGS = -I m4
 
@@ -139,11 +139,33 @@ dist_svg_DATA = svg/icon_white.svg         svg/icon_black.svg      \
            svg/BlackPromoBishop.svg svg/WhitePromoBishop.svg  \
            svg/BlackPromoRook.svg   svg/WhitePromoRook.svg    \
            svg/BlackPromoHorse.svg  svg/WhitePromoHorse.svg   \
-           svg/BlackPromodragon.svg svg/WhitePromoDragon.svg  \
+           svg/BlackPromoDragon.svg svg/WhitePromoDragon.svg  \
            svg/BlackPromoSword.svg  svg/WhitePromoSword.svg   \
            svg/BlackPromoHSword.svg svg/WhitePromoHSword.svg  \
            svg/BlackHCrown.svg     svg/WhiteHCrown.svg       \
            svg/BlackDolphin.svg            svg/WhiteDolphin.svg      \
+           svg/BlackClaw.svg       svg/WhiteClaw.svg         \
+           svg/BlackWolf.svg       svg/WhiteWolf.svg         \
+           svg/BlackCamel.svg      svg/WhiteCamel.svg        \
+           svg/BlackZebra.svg      svg/WhiteZebra.svg        \
+           svg/BlackGnu.svg        svg/WhiteGnu.svg          \
+           svg/BlackWizard.svg     svg/WhiteWizard.svg       \
+           svg/BlackViking.svg     svg/WhiteViking.svg       \
+           svg/BlackIron.svg       svg/WhiteIron.svg         \
+           svg/BlackCopper.svg     svg/WhiteCopper.svg       \
+           svg/BlackTower.svg      svg/WhiteTower.svg        \
+           svg/BlackDragon.svg     svg/WhiteDragon.svg       \
+           svg/BlackCub.svg        svg/WhiteCub.svg          \
+           svg/BlackButterfly.svg   svg/WhiteButterfly.svg    \
+           svg/BlackLeft.svg       svg/WhiteLeft.svg         \
+           svg/BlackRight.svg      svg/WhiteRight.svg        \
+           svg/BlackHat.svg        svg/WhiteHat.svg          \
+           svg/BlackRShield.svg            svg/WhiteRShield.svg      \
+           svg/BlackLShield.svg            svg/WhiteLShield.svg      \
+           svg/BlackAxe.svg        svg/WhiteAxe.svg          \
+           svg/BlackFlag.svg       svg/WhiteFlag.svg         \
+           svg/BlackDuck.svg       svg/WhiteDuck.svg         \
+           svg/BlackPegasus.svg            svg/WhitePegasus.svg      \
            svg/eo_Analyzing.svg     svg/eo_Black.svg          \
            svg/eo_Clear.svg         svg/eo_Ponder.svg         \
            svg/eo_Thinking.svg      svg/eo_Unknown.svg        \
@@ -175,6 +197,11 @@ dist_xiangqi_DATA = themes/xiangqi/BlackAdvisor.svg  themes/xiangqi/WhiteAdvisor
            themes/xiangqi/BlackPawn.svg            themes/xiangqi/WhitePawn.svg     \
            themes/xiangqi/BlackRook.svg            themes/xiangqi/WhiteRook.svg
 
+### directory and files for themes (and other) configuration files
+
+themesdir = $(datadir)/games/xboard/themes/conf
+dist_themes_DATA = conf/shogi conf/xq conf/ics conf/mini conf/mini.fen conf/sho conf/sho.fen
+
 ### directory and files for pixmaps
 
 pixmapsdir = $(gamedatadir)/pixmaps/textures
@@ -183,29 +210,14 @@ dist_pixmaps_DATA = pixmaps/cross32.png pixmaps/cross48.png pixmaps/board32.png
 ### directory and files for pngs
 
 pngdir = $(gamedatadir)/themes/textures
-dist_png_DATA = png/hatch.png png/wood_d.png png/wood_l.png png/xqboard.png
+dist_png_DATA = png/hatch.png png/wood_d.png png/wood_l.png png/xqboard-9x10.png
 
 ### directory and files for sound files
 
 soundsdir = $(gamedatadir)/sounds
 dist_sounds_DATA = \
   sounds/cymbal.wav     sounds/pop2.wav   sounds/slap.wav     sounds/ding1.wav      sounds/laser.wav \
-  sounds/woodthunk.wav  sounds/gong.wav   sounds/penalty.wav  sounds/honkhonk.wav   sounds/phone.wav
-
-
-### set correct dir in xboard.conf
-
-edit = sed -e 's|@pngdir[@]|$(pngdir)|g' \
-           -e 's|@soundsdir[@]|$(soundsdir)|g'
-
-xboard.conf: Makefile $(srcdir)/xboard.conf.in
-       @echo '  'GEN '  ' $@;
-       @rm -f $@ $@.tmp
-       @$(edit) $(srcdir)/$@.in >$@.tmp
-       @mv $@.tmp $@
-
-distclean-local:
-       -rm -f xboard.conf
+  sounds/woodthunk.wav  sounds/gong.wav   sounds/penalty.wav  sounds/honkhonk.wav   sounds/phone.wav  sounds/roar.wav
 
 ### the man page depends on several files, so we add a special rule
 
@@ -250,3 +262,86 @@ if ENABLE_UPDATE_MIMEDB
                $(XDG_ICON_RESOURCE) uninstall --context mimetypes --size 48 ini48.png application-x-xboard-opt;\
        fi
 endif
+
+if OSX_APP
+osxapp: all-recursive install install-recursive
+macportsprefix = $(shell which port | sed s/[/]bin[/]port//)
+       $(MKDIR_P) $(datarootdir)/bin
+       $(MKDIR_P) $(datarootdir)/lib
+       $(MKDIR_P) $(sysconfdir)/gtk-2.0
+       $(MKDIR_P) $(datadir)/themes
+       $(MKDIR_P) $(datadir)/gtk-engines
+       $(MKDIR_P) $(gamedatadir)/themes
+       $(INSTALL) ./osxapp/Info.plist $(prefix)
+       $(INSTALL) ./osxapp/PkgInfo $(prefix)
+       $(INSTALL) ./osxapp/XBoard.gtklauncher $(bindir)/XBoard
+       $(INSTALL) ./xboard $(bindir)/xboard-bin
+       cp -R ./osxapp/icons/. $(datarootdir)
+       sed -e 's?-soundProgram "aplay -q"?-soundProgram "afplay"?'\
+            -e 's?-firstChessProgram fairymax?-firstChessProgram "./fairymax"?'\
+           -e 's?-firstChessProgramNames {fairymax?-firstChessProgramNames {"fairymax" -fcp "./fairymax" -fd "~~/../../bin/fairymax"?'\
+           -e 's?"Fruit 2.1" -fcp fruit -fUCI?"fruit" -fcp "./fruit" -fd "~~/../../bin/fruit" -fUCI?'\
+           -e '/"Crafty" -fcp crafty/d'\
+           -e '/"GNU Chess" -fcp gnuchess/d'\
+           -e 's?"icc" -icshost chessclub.com -icshelper timestamp?"icc" -icshost 207.99.83.228 -icshelper timestamp?'\
+           -e 's?"kc" -icshost alanimus.com -icshelper timeseal?"vics" -icshost winboard.nl -icshelper timeseal?'\
+           -e '/; Save user settings./d'\
+           -e '/; Must be last in file to make user options prevail over system-wide settings!/d'\
+           -e '/-saveSettingsOnExit true/d'\
+           -e '/-saveSettingsFile "~\/.xboardrc"/d'\
+           -e '/-settingsFile "~\/.xboardrc"/d'<./xboard.conf >$(sysconfdir)/xboard.conf
+       echo '; OSX' >>$(sysconfdir)/xboard.conf
+       echo ';'>>$(sysconfdir)/xboard.conf
+       echo '-clockFont "Sans Bold 26" '>>$(sysconfdir)/xboard.conf
+       echo '-pieceImageDirectory "~~/themes/default"' >>$(sysconfdir)/xboard.conf
+       echo '-autoLogo true' >>$(sysconfdir)/xboard.conf
+       echo '-logoDir "~~/logos"' >>$(sysconfdir)/xboard.conf
+       echo '-logoSize 100' >>$(sysconfdir)/xboard.conf
+       echo '-openCommand "open"' >>$(sysconfdir)/xboard.conf
+       echo '-firstDirectory "~~/../../bin/fairymax"' >>$(sysconfdir)/xboard.conf
+       echo '-secondDirectory "~~/../../bin/fairymax"' >>$(sysconfdir)/xboard.conf
+       echo '-secondChessProgram "./fairymax"' >>$(sysconfdir)/xboard.conf
+       echo '-uxiAdapter "uci2wb -%variant %fcp %fd"' >>$(sysconfdir)/xboard.conf
+       echo ';' >>$(sysconfdir)/xboard.conf
+       echo '; Save user settings.' >>$(sysconfdir)/xboard.conf
+       echo '; Must be last in file to make user options prevail over system-wide settings!' >>$(sysconfdir)/xboard.conf
+       echo ';' >>$(sysconfdir)/xboard.conf
+       echo '-saveSettingsOnExit true' >>$(sysconfdir)/xboard.conf
+       echo '-saveSettingsFile "~/Library/Preferences/XBoard.conf"' >>$(sysconfdir)/xboard.conf
+       echo '-settingsFile "~/Library/Preferences/XBoard.conf"' >>$(sysconfdir)/xboard.conf
+
+       sed 's?$(macportsprefix)/lib?/tmp/skl/XBoard.app/Contents/Resources/lib?' <$(macportsprefix)/etc/gtk-2.0/gdk-pixbuf.loaders >$(sysconfdir)/gtk-2.0/gdk-pixbuf.loaders
+       sed -e 's?$(macportsprefix)/lib?/tmp/skl/XBoard.app/Contents/Resources/lib?' -e 's?$(macportsprefix)/share/locale?/tmp/skl/XBoard.app/Contents/Resources/share/locale?' <$(macportsprefix)/etc/gtk-2.0/gtk.immodules >$(sysconfdir)/gtk-2.0/gtk.immodules
+       $(INSTALL) ./osxapp/launcher_rc $(datarootdir)/
+       $(INSTALL) $(macportsprefix)/etc/gtk-2.0/im-multipress.conf $(sysconfdir)/gtk-2.0
+       $(INSTALL) ./osxapp/gtkrc $(sysconfdir)/gtk-2.0/gtkrc
+       cp -R $(macportsprefix)/lib/gtk-2.0 $(datarootdir)/lib
+       cp -R $(macportsprefix)/lib/gdk-pixbuf-2.0 $(datarootdir)/lib
+       cp -R $(macportsprefix)/share/themes/Mac $(datadir)/themes
+       cp -R ./osxapp/gtk2-themes/Mac/gtk-2.0 $(datadir)/themes/Mac
+       cp -R ./osxapp/themes/default/. $(gamedatadir)/themes/default
+       cp $(macportsprefix)/share/gtk-engines/murrine.xml $(datadir)/gtk-engines/murrine.xml
+       $(INSTALL) ./png/marble_d.png $(gamedatadir)/themes/textures
+       $(INSTALL) ./png/marble_l.png $(gamedatadir)/themes/textures
+       $(INSTALL) ./png/xqwood-9x10.png $(gamedatadir)/themes/textures
+       cp -R ./osxapp/logos $(gamedatadir)/
+if NLS_ENABLED
+       cp -R $(macportsprefix)/share/strings/. $(datarootdir)/
+       for i in po/*gmo; do lang=`basename $$i .gmo`; $(INSTALL) $(macportsprefix)/share/locale/$$lang/LC_MESSAGES/gtk20.mo $(localedir)/$$lang/LC_MESSAGES/; done
+endif
+       dylibbundler -of -b -x $(bindir)/xboard-bin -d $(datarootdir)/lib -p @executable_path/../Resources/lib
+       dylibbundler -of -b -x $(datarootdir)/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-png.so -d $(datarootdir)/lib -p @executable_path/../Resources/lib
+       dylibbundler -of -b -x $(datarootdir)/lib/gtk-2.0/2.10.0/immodules/im-quartz.so -d $(datarootdir)/lib -p @executable_path/../Resources/lib
+       dylibbundler -of -b -x $(datarootdir)/lib/gtk-2.0/2.10.0/engines/libpixmap.so -d $(datarootdir)/lib -p @executable_path/../Resources/lib
+       dylibbundler -of -b -x $(datarootdir)/lib/gtk-2.0/2.10.0/engines/libmurrine.so -d $(datarootdir)/lib -p @executable_path/../Resources/lib
+       find ./XBoard.app -name '*.a' -print0 | xargs -0 rm
+       rm -r $(datarootdir)/lib/gtk-2.0/include
+       rm -r $(datarootdir)/share/applications
+       rm $(datarootdir)/share/info/dir
+       rm -r $(datarootdir)/share/icons
+       rm -r $(datarootdir)/share/mime
+       mv $(datarootdir)/share/games/xboard/themes/conf $(datarootdir)/share/xboard/conf
+       rm -r $(datarootdir)/share/xboard/pixmaps
+       rm -r $(datarootdir)/share/games
+endif
+