atomix-2.14.0/0000777000175000017500000000000010404437741010110 500000000000000atomix-2.14.0/po/0000777000175000017500000000000010404437740010525 500000000000000atomix-2.14.0/po/ChangeLog0000644000175000017500000003765610404437266012237 000000000000002006-02-23 Clytie Siddall * ka.po: Added Georgian translation by Gia Shervashidze . 2006-02-15 Gabor Kelemen * hu.po: Hungarian translation updated. 2006-01-30 Lukas Novotny * cs.po: Updated Czech translation. 2006-01-30 Laurent Dhima * sq.po: Updated Albanian translation. 2006-01-23 Kjartan Maraas * nb.po: Updated Norwegian bokmål translation. * no.po: Same. 2006-01-22 Hendrik Brandt * de.po: Updated German translation. 2006-01-22 Nickolay V. Shmyrev * ru.po: Updated Russian translation by Valek Filippov. 2006-01-19 Ales Nyakhaychyk * be.po: Updated Belarusian translation. 2006-01-19 Priit Laes * et.po: Translation updated by Ivar Smolin. 2006-01-12 Slobodan D. Sredojevic * sr.po, sr@Latn.po: Updated Serbian translation 2006-01-10 Abel Cheung * zh_HK.po: New Chinese (Hong Kong) translation * zh_TW.po: Updated Chinese (Taiwan) translation 2006-01-09 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2006-01-09 Alexander Shopov * bg.po: Updated Bulgarian translation. 2006-01-08 Ignacio Casal Quinteiro * gl.po: Updated Galician Translation. 2006-01-08 Takeshi AIHANA * ja.po: Updated Japanese translation. 2006-01-07 Ilkka Tuohela * fi.po: Updated Finnish translation. 2006-01-07 Clytie Siddall * vi.po: Updated Vietnamese translation. 2006-01-07 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2006-01-06 Vincent van Adrighem * nl.po: Translation updated by Tino Meinen. 2005-01-06 Ankit Patel * gu.po: Updated Gujarati Translation. 2006-01-05 Guilherme de S. Pastore * pt_BR.po: Updated Brazilian Portuguese translation. 2006-01-04 Slobodan D. Sredojevic * sr.po, sr@Latn.po: Updated Serbian translation 2005-12-20 Abel Cheung * zh_TW.po: Updated traditional Chinese translation from GNOME HK Team 2005-12-19 Clytie Siddall * vi.po: Updated Vietnamese translation. 2005-12-09 Vincent van Adrighem * nl.po: Translation updated by Tino Meinen. 2005-12-09 Ankit Patel * gu.po: Updated Gujarati Translation. 2005-12-08 Kjartan Maraas * nb.po: Updated Norwegian bokmÃ¥l translation. * no.po: Same. 2005-12-06 Žygimantas Beručka * lt.po: Added Lithuanian translation. 2005-11-26 Marcel Telka * sk.po: Updated Slovak translation. 2005-11-23 Alexander Shopov * bg.po: Updated Bulgarian translation by Alexander Shopov 2005-11-21 Priit Laes * et.po: Translation updated by Ivar Smolin. 2005-11-20 Amanpreet Singh Alam * pa.po: Added Punjabi Translation File 2005-11-20 Kjartan Maraas * nb.po: Add this. 2005-11-18 Laurent Dhima * sq.po: Updated Albanian translation. 2005-11-17 Adam Weinberger * en_CA.po: Updated Canadian English translation. 2005-11-16 Priit Laes * et.po: Translation updated by Ivar Smolin. 2005-11-15 Takeshi AIHANA * ja.po: Updated Japanese translation. 2005-11-14 Guilherme de S. Pastore * es.po: Converted to UTF-8. 2005-11-14 Ignacio Casal Quinteiro * gl.po: Updated Galician Translation. 2005-11-14 Marcel Telka * sk.po: Updated Slovak translation. 2005-11-14 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2005-11-14 Ilkka Tuohela * fi.po: Updated Finnish translation. 2005-11-13 Guilherme de S. Pastore * pt_BR.po: updated Brazilian Portuguese translation * POTFILES.in: updated for the name change in some levels 2005-11-13 Christian Rose * sv.po: Updated Swedish translation. 2005-09-10 Guilherme de S. Pastore * pt_BR.po: updated Brazilian Portuguese translation 2005-08-08 Chao-Hsiung Liao * zh_TW.po: Updated Traditional Chinese translation. 2005-08-04 Takeshi AIHANA * ja.po: Updated Japanese translation. 2005-06-26 Guilherme de S. Pastore * pt_BR.po: fixed Brazilian Portuguese translation of Ethylene (Etileno -> Eteno). 2005-06-18 Guilherme de S. Pastore * pt_BR.po: Updated Brazilian Portuguese translation. 2005-06-16 Guilherme de S. Pastore * POTFILES.in: added all level files to POTFILES.in * pt_BR.po: first attempt to translate chemical substances names, proof-read by Leonardo Pereira . Thanks! 2005-04-24 Guilherme de S. Pastore * pt_BR.po: Updated, revised and fixed some encoding problems with the Brazilian Portuguese translation 2005-04-23 Estêvão Samuel Procópio * pt_BR.po: Updated Brazilian Portuguese Translation. 2005-03-26 Guilherme de S. Pastore * POTFILES.in: src/atomix-ui.xml.in no longer exists, replaced with src/atomix-ui.xml 2005-03-16 Guilherme de S. Pastore * pt_BR.po: Fixed spelling mistake in the Brazilian Portuguese translation 2004-08-23 Alastair McKinstry * ga.po: Added Irish translation. 2004-08-20 Laurent Dhima * sq.po: Updated Albanian translation. 2004-08-18 Laurent Dhima * sq.po: Updated Albanian translation. 2004-08-13 Tommi Vainikainen * fi.po: Unified some fields in po headers for Finnish team. 2004-08-19 Ankit Patel * gu.po: Translation updated. 2004-06-28 Laurent Dhima * sq.po: Translation updated. 2004-06-06 Alexander Shopov * bg.po: Added Bulgarian translation by Rostislav Raikov 2004-05-26 Vincent van Adrighem * nl.po: Translation updated. 2004-05-12 Samúel Jón Gunnarsson * is.po: Added Icelandic translation by Victor Jónsson 2004-04-30 Adam Weinberger * en_CA.po: Added Canadian English translation. 2004-04-15 Andras Timar * hu.po: Updated Hungarian translation. 2004-04-10 Baris Cicek * tr.po: Fixed Charset On Turkish Translation 2004-04-04 Gareth Owen * en_GB.po: Added British English translation 2004-03-30 Pablo Saratxaga * wa.po: updated Walloon file 2004-03-21 Andras Timar * hu.po: Updated Hungarian translation. 2004-02-27 Priit Laes * et.po: Translation updated by Tõivo Leedjärv. 2004-02-26 Vincent van Adrighem * nl.po: Translation updated by Kees van den Broek. 2004-02-23 Guntupalli Karunakar * hi.po: updated Hindi translation. 2004-01-31 Laurent Dhima * sq.po: Updated Albanian translation. 2004-01-28 Miloslav Trmac * cs.po: Fixed Czech translation. 2003-12-26 Jordi Mallach * ca.po: Recode to UTF-8. 2003-12-18 Francisco Javier F. Serrador * es.po: Updated Spanish translation. 2003-12-03 Jens Finke * es.po: Updated Spanish translation by �varo Pe� Gonz�ez. * ko.po: New Korean translation by Young nskystars-goo. 2003-10-25 Metin Amiroff * az.po: Updated Azerbaijani translation. 2003-07-17 Vincent van Adrighem * nl.po: Dutch translation updated by Kees van den Broek. 2003-07-08 Andras Timar * hu.po: Terminology fixes. 2003-06-23 Vincent van Adrighem * nl.po: Dutch translation updated by hemmes. 2003-06-23 Vincent van Adrighem * nl.po: Dutch translation updated by Kees van den Broek. 2003-06-04 Abel Cheung * ta.po: Fix broken encoding. 2003-05-26 Alessio Frusciante * it.po: Updated Italian translation by Paolo Sammicheli. 2003-05-06 Danilo Å egan * sr.po, sr@Latn.po: Added Serbian translation by http://Prevod.org/. 2003-03-20 Gil "Dolfin" Osher * he.po: Added Hebrew translation. 2003-03-07 Metin Amiroff * az.po: Updated Azerbaijani translation. 2003-02-24 Roozbeh Pournader * fa.po: Updated Persian translation. 2003-02-22 Laurent Dhima * sq.po: Added Albanian translation. 2003-02-21 Roozbeh Pournader * fa.po: Added Persian translation. 2003-01-24 Daniel Yacob * am.po: Added Amharic translation. 2002-01-08 German Poo-Caaman~o * es.po: Updated translation by Tatiana Gutierrez Bunster 2002-01-07 Naba Kumar * hi.po: New hindi translation by Guntupalli Karunakar 2002-12-30 Fatih Demir * kn.po: Added Kanada translation by Pramod R . 2002-12-29 Pablo Saratxaga * wa.po: Converted to UTF-8 2002-11-22 Dmitry G. Mastrukov * be.po: Added Belarusian translation * from Belarusian team . 2002-11-05 Fatih Demir * ta.po: Added Tamil translation by Elango. 2002-10-09 Stanislav Brabec * cs.po: Added Czech translation from Michal Bukovjan . 2002-07-25 Christophe Merlet * fr.po: Updated French translation. 2002-07-18 Jens Finke * de.po: Updated German translation. 2002-06-21 Andras Timar * hu.po: Added Hungarian file. 2002-06-06 Jesus Bravo Alvarez * gl.po: Updated Galician translation from Manuel A. Fernandez Montecelo 2002-05-29 Pablo Saratxaga * vi.po: Updated Vietnamese file 2002-05-26 Carlos Perello Marin * pt_BR.po: Updated by Alexandre Folle de Menezes * 2002-05-12 Gustavo Maciel Dias Vieira * pt_BR.po: Updated Brazilian Portuguese translation done by Alexandre Folle de Menezes . 2002-05-05 Gustavo Maciel Dias Vieira * pt_BR.po: Added Brazilian Portuguese translation done by Alexandre Folle de Menezes . 2002-05-04 Peteris Krisjanis *lv.po: Updated Latvian translation 2002-04-29 Pablo Saratxaga * vi.po: Added Vietnamese file * wa.po: Updated Walloon file 2002-04-29 Duarte Loreto * pt.po: Converted Portuguese translation to UTF-8. 2002-04-19 Pablo Saratxaga * ca.po: Added Catalan file * wa.po: Added Walloon file 2002-04-14 Abel Cheung * zh_TW.po: Updated traditional Chinese translation. 2002-04-12 Jarkko Ranta * fi.po: Added Finnish translation by Lauri Nurmi. 2002-04-11 Takeshi Aihana * ja.po: Added Japanese Translation. 2002-03-30 T?µivo Leedj?¤rv * et.po: Updated Estonian translation. 2002-03-22 T?µivo Leedj?¤rv * et.po: Added Estonian translation. 2002-03-08 Ole Laursen * da.po: Updated Danish translation. 2002-03-04 Kjartan Maraas * no.po: Updated Norwegian (bokm?Â¥l) translation. 2002-03-04 Fatih Demir * tr.po: Committed updated Turkish translation by G?¶rkem. 2002-03-03 Wang Jian * zh_CN.po: Updated Simplified Chinese translation. 2002-03-02 Duarte Loreto * pt.po: Updated Portuguese translation. 2002-03-01 Christophe Merlet * fr.po: updated French translation and converted to UTF-8. 2002-02-29 Valek Filippov * ru.po: updated russian translation. 2002-02-28 Zbigniew Chyla * pl.po: Updated Polish translation by GNOME PL Team . 2002-02-28 Stanislav Visnovsky * sk.po: Updated Slovak translation. 2002-02-27 Jens Finke * de.po: Updated german translation and converted it to UTF-8. 2002-02-20 Hasbullah Bin Pit * ms.po: Updated Malay Translation. 2002-02-19 Simos Xenitellis * el.po: Added Greek translation. 2002-02-18 Christian Rose * sv.po: Updated Swedish translation. 2002-02-17 Jens Finke * de.po: Updated german translation. 2002-02-17 Wang Jian * zh_CN.po: Updated Simplified Chinese translation. 2002-02-16 Jens Finke * POTFILES.skip: New file. 2002-01-30 Zbigniew Chyla * pl.po: Updated Polish translation by GNOME PL Team . 2002-01-29 Wang Jian * zh_CN.po: Converted to UTF-8. 2002-01-28 Christian Rose * sv.po: Converted to UTF-8. 2002-01-21 Wang Jian * zh_CN.po: Added Simplified Chinese translation by Wang Li . 2002-01-19 Hasbullah Bin Pit * ms.po: Added Malay Malay Translation. 2002-01-13 Peteris Krisjanis * lv.po: Added Latvian translation. 2001-12-21 Duarte Loreto * pt.po: Updated portuguese translation 2001-12-12 Kjartan Maraas * no.po: Updated Norwegian (bokm?Â¥l) translation. 2001-12-12 Stanislav Visnovsky * sk.po: Added Slovak translation. 2001-12-09 Jens Finke * POTFILES.in: Added src/atomix-ui.xml.in. 2001-12-09 Abel Cheung * zh_TW.po: Updated traditional Chinese translation. 2001-12-08 Christian Rose * sv.po: Updated Swedish translation. 2001-12-07 Pablo Saratxaga * az.po: Added Azeri file 2001-12-04 Kjartan Maraas * no.po: Updated Norwegian (bokm?Â¥l) translation. * POTFILES.in: Update. 2001-12-02 Christian Rose * sv.po: Updated Swedish translation. 2001-11-30 Christian Rose * sv.po: Updated Swedish translation. 2001-11-30 Yuriy Syrota * uk.po: Added uk.po (ukrainian translation) 2001-11-29 German Poo-Caaman~o * es.po: Added es.po (spanish translation) 2001-11-28 Abel Cheung * zh_TW.po: Updated traditional Chinese translation. 2001-11-27 Jesus Bravo Alvarez * gl.po: Added Galician translation from Manuel A. Fern??ndez Montecelo 2001-11-24 Jens Finke * POTFILES.in: Removed src/callbacks.c 2001-11-21 Abel Cheung * zh_TW.po: New traditional Chinese translation. 2001-11-12 Carlos Perell?³ Mar?­n * da.po, de.po, fr.po, nl.po, no.po, , pl.po, pt.po, ru.po, tr.po: Added from GNOME 1.4 version. * it.gmo, po2tbl.sed.in, sv.gmo: Removed, generated files. atomix-2.14.0/po/Makefile.in.in0000644000175000017500000001543610404437641013124 00000000000000# Makefile for program source directory in GNU NLS utilities package. # Copyright (C) 1995, 1996, 1997 by Ulrich Drepper # # This file file be copied and used freely without restrictions. It can # be used in projects which are not available under the GNU Public License # but which still want to provide support for the GNU gettext functionality. # Please note that the actual code is *not* freely available. # # - Modified by Owen Taylor to use GETTEXT_PACKAGE # instead of PACKAGE and to look for po2tbl in ./ not in intl/ # # - Modified by jacob berkman to install # Makefile.in.in and po2tbl.sed.in for use with glib-gettextize # # - Modified by Rodney Dawes for use with intltool # # We have the following line for use by intltoolize: # INTLTOOL_MAKEFILE GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ PACKAGE = @PACKAGE@ VERSION = @VERSION@ SHELL = /bin/sh @SET_MAKE@ srcdir = @srcdir@ top_srcdir = @top_srcdir@ top_builddir = .. VPATH = @srcdir@ prefix = @prefix@ exec_prefix = @exec_prefix@ datadir = @datadir@ datarootdir = @datarootdir@ libdir = @libdir@ localedir = $(libdir)/locale gnulocaledir = $(datadir)/locale gettextsrcdir = $(datadir)/glib-2.0/gettext/po subdir = po install_sh = @install_sh@ # Automake >= 1.8 provides @mkdir_p@. # Until it can be supposed, use the safe fallback: mkdir_p = $(install_sh) -d INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ CC = @CC@ GMSGFMT = @GMSGFMT@ MSGFMT = @MSGFMT@ XGETTEXT = @XGETTEXT@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ MSGMERGE = INTLTOOL_EXTRACT=$(INTLTOOL_EXTRACT) srcdir=$(srcdir) $(INTLTOOL_UPDATE) --gettext-package $(GETTEXT_PACKAGE) --dist GENPOT = INTLTOOL_EXTRACT=$(INTLTOOL_EXTRACT) srcdir=$(srcdir) $(INTLTOOL_UPDATE) --gettext-package $(GETTEXT_PACKAGE) --pot DEFS = @DEFS@ CFLAGS = @CFLAGS@ CPPFLAGS = @CPPFLAGS@ INCLUDES = -I.. -I$(top_srcdir)/intl COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS) SOURCES = POFILES = @POFILES@ GMOFILES = @GMOFILES@ DISTFILES = ChangeLog Makefile.in.in POTFILES.in \ $(POFILES) $(SOURCES) EXTRA_DISTFILES = POTFILES.skip Makevars LINGUAS POTFILES = \ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ .SUFFIXES: .SUFFIXES: .c .o .po .pox .gmo .mo .msg .cat .c.o: $(COMPILE) $< .po.pox: $(MAKE) $(GETTEXT_PACKAGE).pot $(MSGMERGE) $< $(GETTEXT_PACKAGE).pot -o $*.pox .po.mo: $(MSGFMT) -o $@ $< .po.gmo: file=`echo $* | sed 's,.*/,,'`.gmo \ && rm -f $$file && $(GMSGFMT) -o $$file $< .po.cat: sed -f ../intl/po2msg.sed < $< > $*.msg \ && rm -f $@ && gencat $@ $*.msg all: all-@USE_NLS@ all-yes: $(CATALOGS) all-no: $(GETTEXT_PACKAGE).pot: $(POTFILES) $(GENPOT) install: install-exec install-data install-exec: install-data: install-data-@USE_NLS@ install-data-no: all install-data-yes: all $(mkdir_p) $(DESTDIR)$(datadir) @catalogs='$(CATALOGS)'; \ for cat in $$catalogs; do \ cat=`basename $$cat`; \ case "$$cat" in \ *.gmo) destdir=$(gnulocaledir);; \ *) destdir=$(localedir);; \ esac; \ lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \ dir=$(DESTDIR)$$destdir/$$lang/LC_MESSAGES; \ $(mkdir_p) $$dir; \ if test -r $$cat; then \ $(INSTALL_DATA) $$cat $$dir/$(GETTEXT_PACKAGE).mo; \ echo "installing $$cat as $$dir/$(GETTEXT_PACKAGE).mo"; \ else \ $(INSTALL_DATA) $(srcdir)/$$cat $$dir/$(GETTEXT_PACKAGE).mo; \ echo "installing $(srcdir)/$$cat as" \ "$$dir/$(GETTEXT_PACKAGE).mo"; \ fi; \ if test -r $$cat.m; then \ $(INSTALL_DATA) $$cat.m $$dir/$(GETTEXT_PACKAGE).mo.m; \ echo "installing $$cat.m as $$dir/$(GETTEXT_PACKAGE).mo.m"; \ else \ if test -r $(srcdir)/$$cat.m ; then \ $(INSTALL_DATA) $(srcdir)/$$cat.m \ $$dir/$(GETTEXT_PACKAGE).mo.m; \ echo "installing $(srcdir)/$$cat as" \ "$$dir/$(GETTEXT_PACKAGE).mo.m"; \ else \ true; \ fi; \ fi; \ done if test "$(PACKAGE)" = "glib"; then \ $(mkdir_p) $(DESTDIR)$(gettextsrcdir); \ $(INSTALL_DATA) $(srcdir)/Makefile.in.in \ $(DESTDIR)$(gettextsrcdir)/Makefile.in.in; \ else \ : ; \ fi # Define this as empty until I found a useful application. installcheck: uninstall: catalogs='$(CATALOGS)'; \ for cat in $$catalogs; do \ cat=`basename $$cat`; \ lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \ rm -f $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE).mo; \ rm -f $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE).mo.m; \ rm -f $(DESTDIR)$(gnulocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE).mo; \ rm -f $(DESTDIR)$(gnulocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE).mo.m; \ done if test "$(PACKAGE)" = "glib"; then \ rm -f $(DESTDIR)$(gettextsrcdir)/Makefile.in.in; \ fi check: all $(GETTEXT_PACKAGE).pot dvi info tags TAGS ID: mostlyclean: rm -f core core.* *.pox $(GETTEXT_PACKAGE).pot *.old.po cat-id-tbl.tmp rm -fr *.o rm -f .intltool-merge-cache clean: mostlyclean distclean: clean rm -f Makefile Makefile.in POTFILES stamp-it rm -f *.mo *.msg *.cat *.cat.m *.gmo maintainer-clean: distclean @echo "This command is intended for maintainers to use;" @echo "it deletes files that may require special tools to rebuild." rm -f Makefile.in.in distdir = ../$(GETTEXT_PACKAGE)-$(VERSION)/$(subdir) dist distdir: $(DISTFILES) dists="$(DISTFILES)"; \ extra_dists="$(EXTRA_DISTFILES)"; \ for file in $$extra_dists; do \ test -f $(srcdir)/$$file && dists="$$dists $(srcdir)/$$file"; \ done; \ for file in $$dists; do \ test -f $$file || file="$(srcdir)/$$file"; \ ln $$file $(distdir) 2> /dev/null \ || cp -p $$file $(distdir); \ done update-po: Makefile $(MAKE) $(GETTEXT_PACKAGE).pot tmpdir=`pwd`; \ catalogs='$(CATALOGS)'; \ for cat in $$catalogs; do \ cat=`basename $$cat`; \ lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \ echo "$$lang:"; \ result="`$(MSGMERGE) -o $$tmpdir/$$lang.new.po $$lang`"; \ if $$result; then \ if cmp $(srcdir)/$$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \ rm -f $$tmpdir/$$lang.new.po; \ else \ if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \ :; \ else \ echo "msgmerge for $$lang.po failed: cannot move $$tmpdir/$$lang.new.po to $$lang.po" 1>&2; \ rm -f $$tmpdir/$$lang.new.po; \ exit 1; \ fi; \ fi; \ else \ echo "msgmerge for $$cat failed!"; \ rm -f $$tmpdir/$$lang.new.po; \ fi; \ done Makefile POTFILES: stamp-it @if test ! -f $@; then \ rm -f stamp-it; \ $(MAKE) stamp-it; \ fi stamp-it: Makefile.in.in ../config.status POTFILES.in cd .. \ && CONFIG_FILES=$(subdir)/Makefile.in CONFIG_HEADERS= CONFIG_LINKS= \ $(SHELL) ./config.status # Tell versions [3.59,3.63) of GNU make not to export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: atomix-2.14.0/po/POTFILES.in0000644000175000017500000000112710335734763012227 00000000000000level/aceticacid.atomix.xml level/acetone.atomix.xml level/butanol.atomix.xml level/cyclobutane.atomix.xml level/dimethylether.atomix.xml level/ethanal.atomix.xml level/ethane.atomix.xml level/ethanol.atomix.xml level/ethylene.atomix.xml level/glycerin.atomix.xml level/lactic-acid.atomix.xml level/methanal.atomix.xml level/methane.atomix.xml level/methanol.atomix.xml level/propanal.atomix.xml level/propylene.atomix.xml level/pyran.atomix.xml level/transbutylen.atomix.xml level/water.atomix.xml src/atomix-ui.xml src/board.c src/level-manager.c src/main.c src/theme-manager.c atomix.desktop.in atomix-2.14.0/po/am.po0000644000175000017500000001002607763421517011406 00000000000000# Translations into the Amharic Language. # Copyright (C) 2002 Free Software Foundation, Inc. # This file is distributed under the same license as the atomix package. # Ge'ez Frontier Foundation , 2002. # # msgid "" msgstr "" "Project-Id-Version: atomix\n" "POT-Creation-Date: 2003-12-03 18:47+0100\n" "PO-Revision-Date: 2003-01-24 11:45+EDT\n" "Last-Translator: Ge'ez Frontier Foundation \n" "Language-Team: Amharic \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" #: src/atomix-ui.xml.in.h:1 msgid "Continue paused game" msgstr "" #: src/atomix-ui.xml.in.h:2 msgid "E_xit" msgstr "ውጣ (_X)" #: src/atomix-ui.xml.in.h:3 msgid "End a game" msgstr "ጨዋታውን ጨርስ" #: src/atomix-ui.xml.in.h:4 msgid "Exit game" msgstr "ከጨዋታን ውጣ" #: src/atomix-ui.xml.in.h:5 msgid "Pause the running game" msgstr "" #: src/atomix-ui.xml.in.h:6 msgid "Reset level" msgstr "ደረጃን እንደነበረ አድረግ" #: src/atomix-ui.xml.in.h:7 msgid "Restores start situation" msgstr "" #: src/atomix-ui.xml.in.h:8 msgid "Set preferences" msgstr "ምርጫዎችን ይምረጡ" #: src/atomix-ui.xml.in.h:9 msgid "Skip _level" msgstr "ደረጃን ዝለል (_L)" #: src/atomix-ui.xml.in.h:10 msgid "Skip the current level" msgstr "" #: src/atomix-ui.xml.in.h:11 msgid "Start a new game" msgstr "አዲስ ጨዋታ ጀምር" #: src/atomix-ui.xml.in.h:12 msgid "Undo the last move" msgstr "መጨረሻ የተንቀሳቀሰው ይመለስ" #: src/atomix-ui.xml.in.h:13 msgid "View game credits" msgstr "" #: src/atomix-ui.xml.in.h:14 msgid "View highscores" msgstr "ትልቅ ነጥቦች አሳይ" #: src/atomix-ui.xml.in.h:15 msgid "_About" msgstr "ስለ (_A)" #: src/atomix-ui.xml.in.h:16 msgid "_Continue game" msgstr "ጨዋታን ቀጥል (_C)" #: src/atomix-ui.xml.in.h:17 msgid "_Edit" msgstr "አስተካክል (_E)" #: src/atomix-ui.xml.in.h:18 msgid "_End Game" msgstr "ጨዋታውን ጨርስ (_E)" #: src/atomix-ui.xml.in.h:19 msgid "_Game" msgstr "_ጨዋታ (_G)" #: src/atomix-ui.xml.in.h:20 msgid "_Help" msgstr "_መረጃ (_H)" #: src/atomix-ui.xml.in.h:21 msgid "_New Game" msgstr "አዲስ ጨዋታ (_N)" #: src/atomix-ui.xml.in.h:22 msgid "_Pause game" msgstr "ጨዋታውን ለጥቂት ጊዜ አሳርፍ (_P)" #: src/atomix-ui.xml.in.h:23 msgid "_Preferences ..." msgstr "ምርጫዎች... (_P)" #: src/atomix-ui.xml.in.h:24 msgid "_Scores ..." msgstr "ነጥቦች... (_S)" #: src/atomix-ui.xml.in.h:25 msgid "_Undo move" msgstr "_የተንቀሳቀሰው ይመለስ" #: src/level-manager.c:171 msgid "Couldn't find level sequence description." msgstr "" #: src/level-manager.c:185 msgid "No level found." msgstr "ምንም ደረጃ አልተገኘም።" #: src/level-manager.c:286 #, c-format msgid "Found level '%s' in: %s" msgstr "" #: src/main.c:118 src/main.c:444 atomix.desktop.in.h:1 msgid "Atomix" msgstr "አቶሚክስ" #: src/main.c:145 msgid "Copyright (C) 1999-2002 Jens Finke" msgstr "" #: src/main.c:146 msgid "A mind game about atoms and molecules." msgstr "" #: src/main.c:456 msgid "Congratulations! You have finished all Atomix levels." msgstr "" #: src/main.c:467 msgid "Couldn't find at least one level." msgstr "" #: src/main.c:472 msgid "Do you want to finish the game?" msgstr "" #: src/main.c:591 src/main.c:597 src/main.c:602 #, c-format msgid "Couldn't create directory: %s" msgstr "" #. create statistics frame #: src/main.c:701 msgid "Statistics" msgstr "የቍጥር መረጃ ጥናት" #: src/main.c:707 msgid "Level:" msgstr "ደረጃ፦" #: src/main.c:708 msgid "Molecule:" msgstr "" #: src/main.c:709 msgid "Score:" msgstr "ነጥብ፦" #: src/main.c:710 msgid "Time:" msgstr "ሰዓት፦" #: src/main.c:750 #, c-format msgid "Couldn't find file: %s" msgstr "" #: src/theme-manager.c:141 msgid "No themes found." msgstr "" #: src/theme-manager.c:205 #, c-format msgid "Found theme '%s' in: %s" msgstr "" #: atomix.desktop.in.h:2 msgid "Molecule mind game" msgstr "" atomix-2.14.0/po/az.po0000644000175000017500000001034307763421517011425 00000000000000# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR Free Software Foundation, Inc. # FIRST AUTHOR , YEAR. # msgid "" msgstr "" "Project-Id-Version: atomix-game 0.9.1\n" "POT-Creation-Date: 2003-12-03 18:47+0100\n" "PO-Revision-Date: 2003-03-07 19:01+0200\n" "Last-Translator: Mətin Əmirov \n" "Language-Team: Azerbaijani Turkic \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Report-Msgid-Bugs-To: \n" #: src/atomix-ui.xml.in.h:1 msgid "Continue paused game" msgstr "Oyuna davam et" #: src/atomix-ui.xml.in.h:2 msgid "E_xit" msgstr "Ç_ıx" #: src/atomix-ui.xml.in.h:3 msgid "End a game" msgstr "Oyunu qurtar" #: src/atomix-ui.xml.in.h:4 msgid "Exit game" msgstr "Oyundan Çıx" #: src/atomix-ui.xml.in.h:5 msgid "Pause the running game" msgstr "Oyuna fasilə ver" #: src/atomix-ui.xml.in.h:6 msgid "Reset level" msgstr "Səviyyəni sıfırla" #: src/atomix-ui.xml.in.h:7 msgid "Restores start situation" msgstr "Başlama vəziyyətini geri alar" #: src/atomix-ui.xml.in.h:8 msgid "Set preferences" msgstr "Seçənəkləri dəyişdir" #: src/atomix-ui.xml.in.h:9 msgid "Skip _level" msgstr "_Səviyyəni keç" #: src/atomix-ui.xml.in.h:10 msgid "Skip the current level" msgstr "Səviyyəni keç" #: src/atomix-ui.xml.in.h:11 msgid "Start a new game" msgstr "Yeni oyun başlat" #: src/atomix-ui.xml.in.h:12 msgid "Undo the last move" msgstr "Axırıncı gedişi qaytar" #: src/atomix-ui.xml.in.h:13 msgid "View game credits" msgstr "Proqram müəllifləri haqqında" #: src/atomix-ui.xml.in.h:14 msgid "View highscores" msgstr "Ən yüksək xalları toplayanları göstər" #: src/atomix-ui.xml.in.h:15 msgid "_About" msgstr "_Haqqında" #: src/atomix-ui.xml.in.h:16 msgid "_Continue game" msgstr "Oyuna _Davam Et" #: src/atomix-ui.xml.in.h:17 msgid "_Edit" msgstr "_Düzəlt" #: src/atomix-ui.xml.in.h:18 msgid "_End Game" msgstr "Oyunu Qu_rtar" #: src/atomix-ui.xml.in.h:19 msgid "_Game" msgstr "_Oyun" #: src/atomix-ui.xml.in.h:20 msgid "_Help" msgstr "_Yardım" #: src/atomix-ui.xml.in.h:21 msgid "_New Game" msgstr "_Yeni Oyun" #: src/atomix-ui.xml.in.h:22 msgid "_Pause game" msgstr "Oyuna _fasilə ver" #: src/atomix-ui.xml.in.h:23 msgid "_Preferences ..." msgstr "_Seçənəklər..." #: src/atomix-ui.xml.in.h:24 msgid "_Scores ..." msgstr "_Xallar..." #: src/atomix-ui.xml.in.h:25 msgid "_Undo move" msgstr "Gedişi _qaytar" #: src/level-manager.c:171 msgid "Couldn't find level sequence description." msgstr "Səviyə ardıcıllıq təsvirini tapa bilmədim." #: src/level-manager.c:185 msgid "No level found." msgstr "Səviyyə tapılmadı." #: src/level-manager.c:286 #, c-format msgid "Found level '%s' in: %s" msgstr "'%s' səviyyəsini %s-da tapdım" #: src/main.c:118 src/main.c:444 atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomiks" #: src/main.c:145 msgid "Copyright (C) 1999-2002 Jens Finke" msgstr "Müəllif Hüququ (C) 1999-2002 Jens Finke" #: src/main.c:146 msgid "A mind game about atoms and molecules." msgstr "Molekullar və atomlar haqqında ağıl oyunu" #: src/main.c:456 msgid "Congratulations! You have finished all Atomix levels." msgstr "Təbriklər! Bütün atomiks səviyyələrini uğurla keçdiniz." #: src/main.c:467 msgid "Couldn't find at least one level." msgstr "Ən az bir səviyyəni tapa bilmədim!" #: src/main.c:472 msgid "Do you want to finish the game?" msgstr "Həqiqətən də bu oyundan çıxmaq istəyirsiniz?" #: src/main.c:591 src/main.c:597 src/main.c:602 #, c-format msgid "Couldn't create directory: %s" msgstr "Cərgəni yarada bilmədim : %s" #. create statistics frame #: src/main.c:701 msgid "Statistics" msgstr "Statistikalar " #: src/main.c:707 msgid "Level:" msgstr "Səviyyə:" #: src/main.c:708 msgid "Molecule:" msgstr "Molekul:" #: src/main.c:709 msgid "Score:" msgstr "Xal:" #: src/main.c:710 msgid "Time:" msgstr "Vaxt:" #: src/main.c:750 #, c-format msgid "Couldn't find file: %s" msgstr "Faylı tapa bilmədim: %s" #: src/theme-manager.c:141 msgid "No themes found." msgstr "Heç örtük yoxdur." #: src/theme-manager.c:205 #, c-format msgid "Found theme '%s' in: %s" msgstr "'%s' örtüyünü %s-da tapdım" #: atomix.desktop.in.h:2 msgid "Molecule mind game" msgstr "Molekul ağıl oyunu" atomix-2.14.0/po/be.po0000644000175000017500000001427310363652772011406 00000000000000# Belarusian translation of atomix. # Copyright (C) 2002 Free Software Foundation, Inc. # Ales Nyakhaychyk , 2002. # msgid "" msgstr "" "Project-Id-Version: atomix 2.0\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-01-19 05:36+0100\n" "PO-Revision-Date: 2006-01-19 10:58+0200\n" "Last-Translator: Ales Nyakhaychyk \n" "Language-Team: Belarusian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit" #: ../level/aceticacid.atomix.xml.h:1 msgid "Acetic Acid" msgstr "Воцатавая кісліна" #: ../level/acetone.atomix.xml.h:1 msgid "Acetone" msgstr "Ацэтон" #: ../level/butanol.atomix.xml.h:1 msgid "Butanol" msgstr "Бутанол" #: ../level/cyclobutane.atomix.xml.h:1 msgid "Cyclobutane" msgstr "Цыклабутан" #: ../level/dimethylether.atomix.xml.h:1 msgid "Dimethyl Ether" msgstr "Дыметыл эфір" #: ../level/ethanal.atomix.xml.h:1 msgid "Ethanal" msgstr "Этанал" #: ../level/ethane.atomix.xml.h:1 msgid "Ethane" msgstr "Этан" #: ../level/ethanol.atomix.xml.h:1 msgid "Ethanol" msgstr "Этанол" #: ../level/ethylene.atomix.xml.h:1 msgid "Ethylene" msgstr "Этылен" #: ../level/glycerin.atomix.xml.h:1 msgid "Glycerin" msgstr "Гліцэрын" #: ../level/lactic-acid.atomix.xml.h:1 msgid "Lactic Acid" msgstr "Малочная кіслата" #: ../level/methanal.atomix.xml.h:1 msgid "Methanal" msgstr "Мэтанол" #: ../level/methane.atomix.xml.h:1 msgid "Methane" msgstr "Мэтан" #: ../level/methanol.atomix.xml.h:1 msgid "Methanol" msgstr "Мэтанол" #: ../level/propanal.atomix.xml.h:1 msgid "Propanal" msgstr "Propanal" #: ../level/propylene.atomix.xml.h:1 msgid "Propylene" msgstr "Прапілен" #: ../level/pyran.atomix.xml.h:1 msgid "Pyran" msgstr "Піран" #: ../level/transbutylen.atomix.xml.h:1 msgid "Trans Butylen" msgstr "Транс бутылен" #: ../level/water.atomix.xml.h:1 msgid "Water" msgstr "Вада" #: ../src/atomix-ui.xml.h:1 msgid "Continue paused game" msgstr "Працяг прыпыненай гульні" #: ../src/atomix-ui.xml.h:2 msgid "End a game" msgstr "Скончыць гульню" #: ../src/atomix-ui.xml.h:3 msgid "Pause the running game" msgstr "Прыпыніць бягучую гульню" #: ../src/atomix-ui.xml.h:4 msgid "Reset level" msgstr "Ськінуць узровень" #: ../src/atomix-ui.xml.h:5 msgid "Restores start situation" msgstr "Вастанавіць пачатковае становішча" #: ../src/atomix-ui.xml.h:6 msgid "Set preferences" msgstr "Усталяваць перавагі" #: ../src/atomix-ui.xml.h:7 msgid "Skip _level" msgstr "Прапусьціць _узровень" #: ../src/atomix-ui.xml.h:8 msgid "Skip the current level" msgstr "Абмінуць пягучы ўзровень" #: ../src/atomix-ui.xml.h:9 msgid "Start a new game" msgstr "Распачаць новую гульню" #: ../src/atomix-ui.xml.h:10 msgid "Undo the last move" msgstr "Адмяніць апошні ход" #: ../src/atomix-ui.xml.h:11 msgid "View highscores" msgstr "Прагляд лепшых вынікаў" #: ../src/atomix-ui.xml.h:12 msgid "_Continue game" msgstr "Працягнуць гульню" #: ../src/atomix-ui.xml.h:13 msgid "_End Game" msgstr "Скончыць гульню" #: ../src/atomix-ui.xml.h:14 msgid "_Game" msgstr "_Гульня" #. submenu name="Edit" _label="_Edit"> #. #. #. #. " #: ../src/main.c:488 ../atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: ../src/main.c:499 msgid "Congratulations! You have finished all Atomix levels." msgstr "Нашыя віншаваньні! Вы скончылі ўсе ўзроўні Atomix." #: ../src/main.c:509 msgid "Couldn't find at least one level." msgstr "Ні водны ўзровень не адшуканы." #: ../src/main.c:514 msgid "Do you want to finish the game?" msgstr "Вы жадаеце скончыць гульню?" #. create statistics frame #: ../src/main.c:728 msgid "Statistics" msgstr "Статыстыка:" #: ../src/main.c:734 msgid "Level:" msgstr "Узровень:" #: ../src/main.c:735 msgid "Molecule:" msgstr "Малекула:" #: ../src/main.c:736 msgid "Formula:" msgstr "Формула:" #: ../src/main.c:737 msgid "Score:" msgstr "Лік:" #: ../src/main.c:738 msgid "Time:" msgstr "Час:" #: ../src/main.c:778 #, c-format msgid "Couldn't find file: %s" msgstr "Немагчыма адшукаць файл: %s" #: ../src/theme-manager.c:135 msgid "No themes found." msgstr "Тэмы не адшуканы." #: ../src/theme-manager.c:193 #, c-format msgid "Found theme '%s' in: %s" msgstr "Адшукана тэма '%s' у: %s" #: ../atomix.desktop.in.h:2 msgid "Molecule puzzle game" msgstr "Галаваломка з малекуламі" atomix-2.14.0/po/bg.po0000755000175000017500000001560010360507535011377 00000000000000# Bulgarian translation of atomix. # Copyright (C) 2004, 2005 THE atomix'S COPYRIGHT HOLDER # This file is distributed under the same license as the atomix package. # Rostislav Raykov , 2004. # Alexander Shopov , 2005. # msgid "" msgstr "" "Project-Id-Version: atomix\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-01-09 18:31+0200\n" "PO-Revision-Date: 2006-01-09 18:32+0200\n" "Last-Translator: Alexander Shopov \n" "Language-Team: Bulgarian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" #: ../level/aceticacid.atomix.xml.h:1 msgid "Acetic Acid" msgstr "Етанова киселина (оцетна киселина)" #: ../level/acetone.atomix.xml.h:1 msgid "Acetone" msgstr "Пропанон (ацетон)" #: ../level/butanol.atomix.xml.h:1 msgid "Butanol" msgstr "Бутанол" #: ../level/cyclobutane.atomix.xml.h:1 msgid "Cyclobutane" msgstr "Циклобутан" #: ../level/dimethylether.atomix.xml.h:1 msgid "Dimethyl Ether" msgstr "Диметилов етер" #: ../level/ethanal.atomix.xml.h:1 msgid "Ethanal" msgstr "Eтанал" #: ../level/ethane.atomix.xml.h:1 msgid "Ethane" msgstr "Етан" #: ../level/ethanol.atomix.xml.h:1 msgid "Ethanol" msgstr "Етанол (етилов алкохол)" #: ../level/ethylene.atomix.xml.h:1 msgid "Ethylene" msgstr "Етен (етилен)" #: ../level/glycerin.atomix.xml.h:1 msgid "Glycerin" msgstr "1,2,3-пропантриол (глицерин)" #: ../level/lactic-acid.atomix.xml.h:1 msgid "Lactic Acid" msgstr "2-хидроксипропанолова киселина (млечна киселина)" #: ../level/methanal.atomix.xml.h:1 msgid "Methanal" msgstr "Метанал (формалин)" #: ../level/methane.atomix.xml.h:1 msgid "Methane" msgstr "Метан" #: ../level/methanol.atomix.xml.h:1 msgid "Methanol" msgstr "Метанол (метилов алкохол)" #: ../level/propanal.atomix.xml.h:1 msgid "Propanal" msgstr "Пропанал (пропалдехид)" #: ../level/propylene.atomix.xml.h:1 msgid "Propylene" msgstr "Пропен (пропилен)" #: ../level/pyran.atomix.xml.h:1 msgid "Pyran" msgstr "Пиран" #: ../level/transbutylen.atomix.xml.h:1 msgid "Trans Butylen" msgstr "Транс бутен" #: ../level/water.atomix.xml.h:1 msgid "Water" msgstr "Диводороден моноксид (вода)" #: ../src/atomix-ui.xml.h:1 msgid "Continue paused game" msgstr "Продължаване на игра на пауза" #: ../src/atomix-ui.xml.h:2 msgid "End a game" msgstr "Спиране на игра" #: ../src/atomix-ui.xml.h:3 msgid "Pause the running game" msgstr "Пауза на текущата игра" #: ../src/atomix-ui.xml.h:4 msgid "Reset level" msgstr "Р_естартиране на ниво" #: ../src/atomix-ui.xml.h:5 msgid "Restores start situation" msgstr "Връщане на началната позиция" #: ../src/atomix-ui.xml.h:6 msgid "Set preferences" msgstr "Настройки" #: ../src/atomix-ui.xml.h:7 msgid "Skip _level" msgstr "Пр_опускане на ниво" #: ../src/atomix-ui.xml.h:8 msgid "Skip the current level" msgstr "Пропускане на текущото ниво" #: ../src/atomix-ui.xml.h:9 msgid "Start a new game" msgstr "Започване на нова игра" #: ../src/atomix-ui.xml.h:10 msgid "Undo the last move" msgstr "Връщане на последния ход" #: ../src/atomix-ui.xml.h:11 msgid "View highscores" msgstr "Рекорди" #: ../src/atomix-ui.xml.h:12 msgid "_Continue game" msgstr "Прод_ължаване на игра" #: ../src/atomix-ui.xml.h:13 msgid "_End Game" msgstr "_Спиране на игра" #: ../src/atomix-ui.xml.h:14 msgid "_Game" msgstr "_Игра" #. submenu name="Edit" _label="_Edit"> #. #. #. #. \n" "Александър Шопов \n" "\n" "Проектът за превод на GNOME има нужда от подкрепа.\n" "Научете повече за нас на http://gnome.cult.bg\n" "Докладвайте за грешки на http://gnome.cult.bg/bugs" #: ../src/main.c:488 ../atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: ../src/main.c:499 msgid "Congratulations! You have finished all Atomix levels." msgstr "Поздравления! Завършихте всички нива на Atomix." #: ../src/main.c:509 msgid "Couldn't find at least one level." msgstr "Няма открити нива." #: ../src/main.c:514 msgid "Do you want to finish the game?" msgstr "Искате ли да завършите играта?" #. create statistics frame #: ../src/main.c:728 msgid "Statistics" msgstr "Статистика" #: ../src/main.c:734 msgid "Level:" msgstr "Ниво:" #: ../src/main.c:735 msgid "Molecule:" msgstr "Молекула:" #: ../src/main.c:736 msgid "Formula:" msgstr "Формула:" #: ../src/main.c:737 msgid "Score:" msgstr "Резултат:" #: ../src/main.c:738 msgid "Time:" msgstr "Време:" #: ../src/main.c:778 #, c-format msgid "Couldn't find file: %s" msgstr "Файлът „%s“ не може да бъде открит." #: ../src/theme-manager.c:135 msgid "No themes found." msgstr "Не са открити теми." #: ../src/theme-manager.c:193 #, c-format msgid "Found theme '%s' in: %s" msgstr "Темата „%s“ е открита в %s" #: ../atomix.desktop.in.h:2 msgid "Molecule puzzle game" msgstr "Загадки с молекули" atomix-2.14.0/po/ca.po0000644000175000017500000001102607773026541011374 00000000000000# Catalan translation of atomix. # Copyright © 2002 Free Software Foundation, Inc. # This file is distributed under the same license as the atomix package. # Gisela Carbonell, 2002. # msgid "" msgstr "" "Project-Id-Version: atomix 0.9.2\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2003-12-26 13:42+0100\n" "PO-Revision-Date: 2003-12-26 13:43+0100\n" "Last-Translator: Gisela Carbonell\n" "Language-Team: Catalan \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: src/atomix-ui.xml.in.h:1 msgid "Continue paused game" msgstr "Continua el joc aturat" #: src/atomix-ui.xml.in.h:2 msgid "E_xit" msgstr "_Surt" #: src/atomix-ui.xml.in.h:3 msgid "End a game" msgstr "Finalitza un joc" #: src/atomix-ui.xml.in.h:4 msgid "Exit game" msgstr "Surt del joc" #: src/atomix-ui.xml.in.h:5 msgid "Pause the running game" msgstr "Atura el joc en execució" #: src/atomix-ui.xml.in.h:6 msgid "Reset level" msgstr "Reinicia el nivell" #: src/atomix-ui.xml.in.h:7 msgid "Restores start situation" msgstr "Restaura la situació inicial" #: src/atomix-ui.xml.in.h:8 msgid "Set preferences" msgstr "Defineix les preferències" #: src/atomix-ui.xml.in.h:9 msgid "Skip _level" msgstr "Omet el _nivell" #: src/atomix-ui.xml.in.h:10 msgid "Skip the current level" msgstr "Omet el nivell actual" #: src/atomix-ui.xml.in.h:11 msgid "Start a new game" msgstr "Inicia un joc nou" #: src/atomix-ui.xml.in.h:12 msgid "Undo the last move" msgstr "Desfés l'últim moviment" #: src/atomix-ui.xml.in.h:13 msgid "View game credits" msgstr "Visualitza els crèdits del joc" #: src/atomix-ui.xml.in.h:14 msgid "View highscores" msgstr "Visualitza les puntuacions màximes" #: src/atomix-ui.xml.in.h:15 msgid "_About" msgstr "_Quant a" #: src/atomix-ui.xml.in.h:16 msgid "_Continue game" msgstr "_Continua el joc" #: src/atomix-ui.xml.in.h:17 msgid "_Edit" msgstr "_Edita" #: src/atomix-ui.xml.in.h:18 msgid "_End Game" msgstr "_Finalitza el joc" #: src/atomix-ui.xml.in.h:19 msgid "_Game" msgstr "_Joc" #: src/atomix-ui.xml.in.h:20 msgid "_Help" msgstr "_Ajuda" #: src/atomix-ui.xml.in.h:21 msgid "_New Game" msgstr "Joc _nou" #: src/atomix-ui.xml.in.h:22 msgid "_Pause game" msgstr "_Atura el joc" #: src/atomix-ui.xml.in.h:23 msgid "_Preferences ..." msgstr "_Preferències ..." #: src/atomix-ui.xml.in.h:24 msgid "_Scores ..." msgstr "_Puntuacions ..." #: src/atomix-ui.xml.in.h:25 msgid "_Undo move" msgstr "_Desfés la jugada" #: src/level-manager.c:171 msgid "Couldn't find level sequence description." msgstr "No s'ha trobat la descripció de la seqüència del nivell." #: src/level-manager.c:185 msgid "No level found." msgstr "No s'ha trobat cap nivell." #: src/level-manager.c:286 #, c-format msgid "Found level '%s' in: %s" msgstr "S'ha trobat el nivell '%s' a: %s" #: src/main.c:118 src/main.c:444 atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: src/main.c:145 msgid "Copyright (C) 1999-2002 Jens Finke" msgstr "Copyright (C) 1999-2002 Jens Finke" #: src/main.c:146 msgid "A mind game about atoms and molecules." msgstr "Un joc mental sobre àtoms i mol·lècules." #: src/main.c:456 msgid "Congratulations! You have finished all Atomix levels." msgstr "Felicitats! Heu finalitzat tots els nivells de l'Atomix." #: src/main.c:467 msgid "Couldn't find at least one level." msgstr "No s'ha trobat ni tan sols un nivell" #: src/main.c:472 msgid "Do you want to finish the game?" msgstr "Voleu finalitzar el joc?" #: src/main.c:591 src/main.c:597 src/main.c:602 #, c-format msgid "Couldn't create directory: %s" msgstr "No s'ha pogut crear el directori: %s" #. create statistics frame #: src/main.c:701 msgid "Statistics" msgstr "Estadístiques" #: src/main.c:707 msgid "Level:" msgstr "Nivell:" #: src/main.c:708 msgid "Molecule:" msgstr "Mol·lècula:" #: src/main.c:709 msgid "Score:" msgstr "Puntuació:" #: src/main.c:710 msgid "Time:" msgstr "Temps:" #: src/main.c:750 #, c-format msgid "Couldn't find file: %s" msgstr "No s'ha pogut localitzar el fitxer: %s" #: src/theme-manager.c:141 msgid "No themes found." msgstr "No s'ha trobat cap tema." #: src/theme-manager.c:205 #, c-format msgid "Found theme '%s' in: %s" msgstr "S'ha trobat el tema '%s' a: %s" #: atomix.desktop.in.h:2 msgid "Molecule mind game" msgstr "Joc mental de mol·lècules" #~ msgid "Atomix Splash" #~ msgstr "Presentació de l'Atomix" #~ msgid "Game Paused" #~ msgstr "El joc està aturat" #~ msgid "Game Over" #~ msgstr "El joc ha finalitzat" #~ msgid "Atomix - Molecule Mind Game" #~ msgstr "Atomix - Joc mental de mol·lècules" atomix-2.14.0/po/cs.po0000644000175000017500000001405310367502122011404 00000000000000# Czech translation of gnome-2.14. # Copyright (C) 1999 - 2002 Jens Finke # Copyright (C) 2006 Lukas Novotny # This file is distributed under the same license as the Atomix package. # Michal Bukovjan , 2002. # Miloslav Trmac , 2004. # Lukas Novotny , 2006. # # msgid "" msgstr "" "Project-Id-Version: Atomix 2.13.4\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-01-30 21:16+0100\n" "PO-Revision-Date: 2006-01-30 22:10+0100\n" "Last-Translator: Lukas Novotny \n" "Language-Team: Czech \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit" #: ../level/aceticacid.atomix.xml.h:1 msgid "Acetic Acid" msgstr "Kyselina octová" #: ../level/acetone.atomix.xml.h:1 msgid "Acetone" msgstr "Aceton" #: ../level/butanol.atomix.xml.h:1 msgid "Butanol" msgstr "Butanol" #: ../level/cyclobutane.atomix.xml.h:1 msgid "Cyclobutane" msgstr "Cyclobutan" #: ../level/dimethylether.atomix.xml.h:1 msgid "Dimethyl Ether" msgstr "Kalný éter" #: ../level/ethanal.atomix.xml.h:1 msgid "Ethanal" msgstr "Acetaldehyd" #: ../level/ethane.atomix.xml.h:1 msgid "Ethane" msgstr "Etan" #: ../level/ethanol.atomix.xml.h:1 msgid "Ethanol" msgstr "Ethanol" #: ../level/ethylene.atomix.xml.h:1 msgid "Ethylene" msgstr "Etylen" #: ../level/glycerin.atomix.xml.h:1 msgid "Glycerin" msgstr "Glycerin" #: ../level/lactic-acid.atomix.xml.h:1 msgid "Lactic Acid" msgstr "Kyselina mléčná" #: ../level/methanal.atomix.xml.h:1 msgid "Methanal" msgstr "Formaldehyd" #: ../level/methane.atomix.xml.h:1 msgid "Methane" msgstr "Metan" #: ../level/methanol.atomix.xml.h:1 msgid "Methanol" msgstr "Metylalkohol" #: ../level/propanal.atomix.xml.h:1 msgid "Propanal" msgstr "Propanal" #: ../level/propylene.atomix.xml.h:1 msgid "Propylene" msgstr "Propylen" #: ../level/pyran.atomix.xml.h:1 msgid "Pyran" msgstr "Pyran" #: ../level/transbutylen.atomix.xml.h:1 msgid "Trans Butylen" msgstr "Trans Butylen" #: ../level/water.atomix.xml.h:1 msgid "Water" msgstr "Voda" #: ../src/atomix-ui.xml.h:1 msgid "Continue paused game" msgstr "Pokračovat v pozastavené hře" #: ../src/atomix-ui.xml.h:2 msgid "End a game" msgstr "Ukončit hru" #: ../src/atomix-ui.xml.h:3 msgid "Pause the running game" msgstr "Pozastavit běžící hru" #: ../src/atomix-ui.xml.h:4 msgid "Reset level" msgstr "Vynulovat úroveň" #: ../src/atomix-ui.xml.h:5 msgid "Restores start situation" msgstr "Obnoví výchozí situaci" #: ../src/atomix-ui.xml.h:6 msgid "Set preferences" msgstr "Nastavit volby" #: ../src/atomix-ui.xml.h:7 msgid "Skip _level" msgstr "Přeskočit úro_veň" #: ../src/atomix-ui.xml.h:8 msgid "Skip the current level" msgstr "Přeskočí současnou úroveň" #: ../src/atomix-ui.xml.h:9 msgid "Start a new game" msgstr "Začít novou hru" #: ../src/atomix-ui.xml.h:10 msgid "Undo the last move" msgstr "Vzít poslední tah zpět" #: ../src/atomix-ui.xml.h:11 msgid "View highscores" msgstr "Zobrazit nejvyšší skóre" #: ../src/atomix-ui.xml.h:12 msgid "_Continue game" msgstr "Po_kračovat ve hře" #: ../src/atomix-ui.xml.h:13 msgid "_End Game" msgstr "_Ukončit hru" #: ../src/atomix-ui.xml.h:14 msgid "_Game" msgstr "_Hra" #. submenu name="Edit" _label="_Edit"> #. #. #. #. " #: ../src/main.c:488 ../atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: ../src/main.c:499 msgid "Congratulations! You have finished all Atomix levels." msgstr "Gratuluji! Dokončil jste všechny úrovně hry Atomix." #: ../src/main.c:509 msgid "Couldn't find at least one level." msgstr "Nebylo možné nalézt alespoň jednu úroveň." #: ../src/main.c:514 msgid "Do you want to finish the game?" msgstr "Chcete dokončit tuto hru?" #. create statistics frame #: ../src/main.c:728 msgid "Statistics" msgstr "Statistika" #: ../src/main.c:734 msgid "Level:" msgstr "Úroveň:" #: ../src/main.c:735 msgid "Molecule:" msgstr "Molekula:" #: ../src/main.c:736 msgid "Formula:" msgstr "Vzorec:" #: ../src/main.c:737 msgid "Score:" msgstr "Skóre:" #: ../src/main.c:738 msgid "Time:" msgstr "Čas:" #: ../src/main.c:778 #, c-format msgid "Couldn't find file: %s" msgstr "Nelze nalézt soubor: %s" #: ../src/theme-manager.c:135 msgid "No themes found." msgstr "Nebyla nalezena žádná témata." #: ../src/theme-manager.c:193 #, c-format msgid "Found theme '%s' in: %s" msgstr "Nalezeno téma '%s' v: %s" #: ../atomix.desktop.in.h:2 msgid "Molecule puzzle game" msgstr "Hra puzzle s molekulami" #~ msgid "E_xit" #~ msgstr "_Konec" #~ msgid "Exit game" #~ msgstr "Ukončit hru" #~ msgid "View game credits" #~ msgstr "Zobrazit poděkování autorům hry" #~ msgid "_About" #~ msgstr "_O aplikaci" #~ msgid "_Edit" #~ msgstr "Ú_pravy" #~ msgid "Copyright (C) 1999-2002 Jens Finke" #~ msgstr "Copyright © 1999-2002 Jens Finke" #~ msgid "Couldn't create directory: %s" #~ msgstr "Nelze vytvořit adresář: %s" atomix-2.14.0/po/da.po0000644000175000017500000002330407763421517011400 00000000000000# Danish translation of atomix. # Copyright (C) 2001, 02 Free Software Foundation, Inc. # Keld Simonsen , 2001. # Ole Laursen , 2002. # msgid "" msgstr "" "Project-Id-Version: atomix\n" "POT-Creation-Date: 2003-12-03 18:47+0100\n" "PO-Revision-Date: 2002-03-08 22:45+0100\n" "Last-Translator: Ole Laursen \n" "Language-Team: Danish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8-bit\n" #: src/atomix-ui.xml.in.h:1 msgid "Continue paused game" msgstr "Fortsæt spil" #: src/atomix-ui.xml.in.h:2 msgid "E_xit" msgstr "_Afslut" #: src/atomix-ui.xml.in.h:3 msgid "End a game" msgstr "Afslut et spil" #: src/atomix-ui.xml.in.h:4 msgid "Exit game" msgstr "Afslut spillet" #: src/atomix-ui.xml.in.h:5 msgid "Pause the running game" msgstr "Sæt spillet på pause" #: src/atomix-ui.xml.in.h:6 msgid "Reset level" msgstr "Nulstil niveau" #: src/atomix-ui.xml.in.h:7 msgid "Restores start situation" msgstr "Gendanner startsituationen" #: src/atomix-ui.xml.in.h:8 msgid "Set preferences" msgstr "Angiv indstillinger" #: src/atomix-ui.xml.in.h:9 msgid "Skip _level" msgstr "Spring _niveau over" #: src/atomix-ui.xml.in.h:10 msgid "Skip the current level" msgstr "Spring over det nuværende _niveau" #: src/atomix-ui.xml.in.h:11 msgid "Start a new game" msgstr "Start et nyt spil" #: src/atomix-ui.xml.in.h:12 msgid "Undo the last move" msgstr "Fortryd det sidste spil" #: src/atomix-ui.xml.in.h:13 msgid "View game credits" msgstr "Vis tak til-oplysninger" #: src/atomix-ui.xml.in.h:14 msgid "View highscores" msgstr "Vis top ti" #: src/atomix-ui.xml.in.h:15 msgid "_About" msgstr "_Om" #: src/atomix-ui.xml.in.h:16 msgid "_Continue game" msgstr "_Fortsæt spil" #: src/atomix-ui.xml.in.h:17 msgid "_Edit" msgstr "_Redigér" #: src/atomix-ui.xml.in.h:18 msgid "_End Game" msgstr "_Afslut spil" #: src/atomix-ui.xml.in.h:19 msgid "_Game" msgstr "_Spil" #: src/atomix-ui.xml.in.h:20 msgid "_Help" msgstr "_Hjælp" #: src/atomix-ui.xml.in.h:21 msgid "_New Game" msgstr "_Nyt spil" #: src/atomix-ui.xml.in.h:22 msgid "_Pause game" msgstr "_Pause spil" #: src/atomix-ui.xml.in.h:23 msgid "_Preferences ..." msgstr "_Indstillinger..." #: src/atomix-ui.xml.in.h:24 msgid "_Scores ..." msgstr "_Point..." #: src/atomix-ui.xml.in.h:25 msgid "_Undo move" msgstr "_Fortryd flytning" #: src/level-manager.c:171 msgid "Couldn't find level sequence description." msgstr "Kunne ikke finde niveausekvensbeskrivelse." #: src/level-manager.c:185 msgid "No level found." msgstr "Intet niveau fundet." #: src/level-manager.c:286 #, c-format msgid "Found level '%s' in: %s" msgstr "Fandt niveau '%s' i: %s" #: src/main.c:118 src/main.c:444 atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: src/main.c:145 msgid "Copyright (C) 1999-2002 Jens Finke" msgstr "Copyright © 1999-2002 Jens Finke" #: src/main.c:146 msgid "A mind game about atoms and molecules." msgstr "Et tænkespil om atomer og molekyler." #: src/main.c:456 msgid "Congratulations! You have finished all Atomix levels." msgstr "Tillykke! Du klaret alle niveauer i Atomix." #: src/main.c:467 msgid "Couldn't find at least one level." msgstr "Kunne ikke finde blot ét niveau." #: src/main.c:472 msgid "Do you want to finish the game?" msgstr "Vil du virkelig afslutte spillet?" #: src/main.c:591 src/main.c:597 src/main.c:602 #, c-format msgid "Couldn't create directory: %s" msgstr "Kunne ikke oprette mappe: %s" #. create statistics frame #: src/main.c:701 msgid "Statistics" msgstr "Statistik" #: src/main.c:707 msgid "Level:" msgstr "Niveau:" #: src/main.c:708 msgid "Molecule:" msgstr "Molekyle:" #: src/main.c:709 msgid "Score:" msgstr "Point:" #: src/main.c:710 msgid "Time:" msgstr "Tid:" #: src/main.c:750 #, c-format msgid "Couldn't find file: %s" msgstr "Kunne ikke finde fil: %s" #: src/theme-manager.c:141 msgid "No themes found." msgstr "Ingen temaer fundet." #: src/theme-manager.c:205 #, c-format msgid "Found theme '%s' in: %s" msgstr "Fandt temaet '%s' i: %s" #: atomix.desktop.in.h:2 msgid "Molecule mind game" msgstr "Molekyletænkespil" #~ msgid "Atomix Splash" #~ msgstr "Atomix" #~ msgid "Game Paused" #~ msgstr "Spil på pause" #~ msgid "Game Over" #~ msgstr "Spillet er slut" #~ msgid "Atomix - Molecule Mind Game" #~ msgstr "Atomix - molekylært tænkespil" #~ msgid "" #~ "There does already a theme with\n" #~ "this name exist." #~ msgstr "" #~ "Det findes allerede et tema med\n" #~ "samme navn." #~ msgid "_New File" #~ msgstr "_Ny fil" #~ msgid "Theme Window" #~ msgstr "Temavindue" #~ msgid "_Delete Theme" #~ msgstr "_Fjern tema" #~ msgid "Atomixed manual" #~ msgstr "Atomixed-manual" #~ msgid "_Level" #~ msgstr "_Niveau" #~ msgid "_Theme" #~ msgstr "_Tema" #~ msgid "New" #~ msgstr "Ny" #~ msgid "New File" #~ msgstr "Ny fil" #~ msgid "Open" #~ msgstr "Åbn" #~ msgid "Open File" #~ msgstr "Åbn fil" #~ msgid "Save" #~ msgstr "Gem" #~ msgid "Theme Wnd" #~ msgstr "Temavindue" #~ msgid "No." #~ msgstr "Nej." #~ msgid "Level" #~ msgstr "Niveau" #~ msgid "Goal" #~ msgstr "Mål" #~ msgid "Themename:" #~ msgstr "Temanavn:" #~ msgid "Filename:" #~ msgstr "Filnavn:" #~ msgid "Bonuslevel" #~ msgstr "Bonusniveau" #~ msgid "Time" #~ msgstr "Tid" #~ msgid "Minutes: " #~ msgstr "Minutter: " #~ msgid "Seconds:" #~ msgstr "Sekunder:" #~ msgid "Leveleditor" #~ msgstr "Niveauredigering" #~ msgid "Images" #~ msgstr "Billeder" #~ msgid "Connections" #~ msgstr "Opkoblinger" #~ msgid "Moveables" #~ msgstr "Flytbare" #~ msgid "Obstacles" #~ msgstr "Hindringer" #~ msgid "Background Color:" #~ msgstr "Baggrundsfarve:" #~ msgid "Animation Step:" #~ msgstr "Animationstrin:" #~ msgid "Tile Height:" #~ msgstr "Flisehøjde:" #~ msgid "Tile Width:" #~ msgstr "Flisebredde:" #~ msgid "Themeeditor" #~ msgstr "Temaredigering" #~ msgid "Mouse functions" #~ msgstr "Musefunktioner" #~ msgid "Clear" #~ msgstr "Tøm" #~ msgid "Set" #~ msgstr "Sæt" #~ msgid "Move" #~ msgstr "Flyt" #~ msgid "Current Values" #~ msgstr "Aktuelle værdier" #~ msgid "Rows:" #~ msgstr "Rækker:" #~ msgid "Columns:" #~ msgstr "Kolonner:" #~ msgid "New Values" #~ msgstr "Nye værdier" #~ msgid "New Level" #~ msgstr "Nyt niveau" #~ msgid "Levelname:" #~ msgstr "Niveaunavn:" #~ msgid "Playfield Size" #~ msgstr "Størrelse på spillefelt" #~ msgid "Goal Size" #~ msgstr "Størrelse på mål" #~ msgid "Change level name" #~ msgstr "Ændr navn på niveau" #~ msgid "" #~ "There is already a level with the same name. Please choose another\n" #~ "name for this level." #~ msgstr "" #~ "Det findes allerede et niveau med samme navn. Vær venlig og vælg et\n" #~ "andet navn på dette niveau." #~ msgid "Current Name:" #~ msgstr "Nuværende navn:" #~ msgid "Add Image" #~ msgstr "Tilføj billede" #~ msgid "Text:" #~ msgstr "Tekst:" #~ msgid "Change ID" #~ msgstr "Ændr ID" #~ msgid "Current ID:" #~ msgstr "Aktivt ID:" #~ msgid "New ID:" #~ msgstr "Nyt ID:" #~ msgid "New Theme" #~ msgstr "Nyt tema" #~ msgid "No tile to clear here." #~ msgstr "Ingen brik at rydde her." #~ msgid "No tile to move here." #~ msgstr "Ingen brik at flytte her." #~ msgid "Copy Goal" #~ msgstr "Kopiér mål" #~ msgid "Copy the goal into the playfield." #~ msgstr "Kopiér målet på spillepladen." #~ msgid "Clear Grid" #~ msgstr "Tøm gitter" #~ msgid "Clears the whole grid." #~ msgstr "Tømmer hele gitteret." #~ msgid "Add an image to the list." #~ msgstr "Tilføj et billede til listen." #~ msgid "Delete Image" #~ msgstr "Slet billede" #~ msgid "Delete selected image(s)." #~ msgstr "Fjern de markerede billeder." #~ msgid "Change the ID of the image." #~ msgstr "Ændr billedets ID." #~ msgid "Press Ctrl+N for a new Game" #~ msgstr "Tryk Ctrl+N for et nyt spil" #~ msgid "Atomix manual" #~ msgstr "Atomix-manual" #~ msgid "" #~ "Level not found.\n" #~ "Sorry, but the game ends here.\n" #~ "\n" #~ "(Please make sure you have *.atomix\n" #~ "files either in /share/atomix/levels\n" #~ "or ~/.atomix/levels.)" #~ msgstr "" #~ "Niveauet kunne ikke findes.\n" #~ "Desværre, spillet slutter her.\n" #~ "\n" #~ "(Vær venlig og forsikr dig om at\n" #~ "du har *.atomix-filer i enten\n" #~ "/share/atomix/levels eller\n" #~ "~/.atomix/levels.)" #~ msgid "Information" #~ msgstr "Information" #~ msgid "Atomix Next Level" #~ msgstr "Næste Atomixniveau" #~ msgid "Congratulations! You have successfully finished this level." #~ msgstr "Tillykke! Du har fuldført dette niveau." #~ msgid "Remaining Time:" #~ msgstr "Resterende tid:" #~ msgid "Are you ready for the next level?" #~ msgstr "Er du parat til næste niveau?" #~ msgid "Atomix End" #~ msgstr "Atomix-slut" #~ msgid "Do you want to play again?" #~ msgstr "Vil du spille igen?" #~ msgid "enable score and time limit" #~ msgstr "anvend point- og tidsgrænse" #~ msgid "General" #~ msgstr "Generelt" #~ msgid "Keyboard (return and cursor keys)" #~ msgstr "Tastatur (enter- og piltangenter)" #~ msgid "Mouse" #~ msgstr "Mus" #~ msgid "Mouse Properties" #~ msgstr "Muse-egenskaber" #~ msgid "enable lazy dragging" #~ msgstr "anvend langsom flytning" #~ msgid "Sensitivity:" #~ msgstr "Følsomhed:" #~ msgid "high" #~ msgstr "høj" #~ msgid "low" #~ msgstr "lav" #~ msgid "Control" #~ msgstr "Kontrol" #~ msgid "Do you really want to exit the program?" #~ msgstr "Vil du virkelig afslutte programmet?" #~ msgid "" #~ "Your time is up! This costs you 10% of your score. \n" #~ "More luck next time. \n" #~ "\n" #~ "Do you want to retry?" #~ msgstr "" #~ "Tiden er slut! Dette koster dig 10% af dine point.\n" #~ "Bedre held næste gang.\n" #~ "\n" #~ "Vil du forsøge igen?" #~ msgid "" #~ "Sorry your time is up! But this was only\n" #~ "a bonus level so go further now." #~ msgstr "" #~ "Desværre, din tid er udløbet! Men dette var\n" #~ "bare et bonusniveau, så fortsæt nu." atomix-2.14.0/po/de.po0000644000175000017500000001326610364766041011405 00000000000000# German translation for Atomix. # Copyright (C) 2001-2002 Free Software Foundation, Inc. # Christian Meyer , 2001. # Jens Finke , 2002. # Hendrik Brandt , 2006. # Jens Finke , 2006. # # msgid "" msgstr "" "Project-Id-Version: atomix HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-01-22 21:33+0100\n" "PO-Revision-Date: 2006-01-22 21:32+0100\n" "Last-Translator: Hendrik Brandt \n" "Language-Team: German \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../level/aceticacid.atomix.xml.h:1 msgid "Acetic Acid" msgstr "Essigsäure" #: ../level/acetone.atomix.xml.h:1 msgid "Acetone" msgstr "Azeton" #: ../level/butanol.atomix.xml.h:1 msgid "Butanol" msgstr "Butanol" #: ../level/cyclobutane.atomix.xml.h:1 msgid "Cyclobutane" msgstr "Zyklobutan" #: ../level/dimethylether.atomix.xml.h:1 msgid "Dimethyl Ether" msgstr "Dimethylether" #: ../level/ethanal.atomix.xml.h:1 msgid "Ethanal" msgstr "Ethanal" #: ../level/ethane.atomix.xml.h:1 msgid "Ethane" msgstr "Ethan" #: ../level/ethanol.atomix.xml.h:1 msgid "Ethanol" msgstr "Ethanol" #: ../level/ethylene.atomix.xml.h:1 msgid "Ethylene" msgstr "Äthylen" #: ../level/glycerin.atomix.xml.h:1 msgid "Glycerin" msgstr "Glyzerin" #: ../level/lactic-acid.atomix.xml.h:1 msgid "Lactic Acid" msgstr "Milchsäure" #: ../level/methanal.atomix.xml.h:1 msgid "Methanal" msgstr "Methanal" #: ../level/methane.atomix.xml.h:1 msgid "Methane" msgstr "Methan" #: ../level/methanol.atomix.xml.h:1 msgid "Methanol" msgstr "Methanol" #: ../level/propanal.atomix.xml.h:1 msgid "Propanal" msgstr "Propanal" #: ../level/propylene.atomix.xml.h:1 msgid "Propylene" msgstr "Propylen" #: ../level/pyran.atomix.xml.h:1 msgid "Pyran" msgstr "Pyran" #: ../level/transbutylen.atomix.xml.h:1 msgid "Trans Butylen" msgstr "Transbutylen" #: ../level/water.atomix.xml.h:1 msgid "Water" msgstr "Wasser" #: ../src/atomix-ui.xml.h:1 msgid "Continue paused game" msgstr "Spiel _fortsetzen" #: ../src/atomix-ui.xml.h:2 msgid "End a game" msgstr "Spiel beenden" #: ../src/atomix-ui.xml.h:3 msgid "Pause the running game" msgstr "Laufendes Spiel anhalten" #: ../src/atomix-ui.xml.h:4 msgid "Reset level" msgstr "Level zurücksetzen" #: ../src/atomix-ui.xml.h:5 msgid "Restores start situation" msgstr "Startsituation wiederherstellen" #: ../src/atomix-ui.xml.h:6 msgid "Set preferences" msgstr "Einstellungen" #: ../src/atomix-ui.xml.h:7 msgid "Skip _level" msgstr "_Level überspringen" #: ../src/atomix-ui.xml.h:8 msgid "Skip the current level" msgstr "Aktuellen _Level überspringen" #: ../src/atomix-ui.xml.h:9 msgid "Start a new game" msgstr "Ein neues Spiel starten" #: ../src/atomix-ui.xml.h:10 msgid "Undo the last move" msgstr "Letzten Zug zurücknehmen" #: ../src/atomix-ui.xml.h:11 msgid "View highscores" msgstr "Ruhmeshalle anzeigen" #: ../src/atomix-ui.xml.h:12 msgid "_Continue game" msgstr "Spiel _fortsetzen" #: ../src/atomix-ui.xml.h:13 msgid "_End Game" msgstr "Spiel beenden" #: ../src/atomix-ui.xml.h:14 msgid "_Game" msgstr "Spiel" #. submenu name="Edit" _label="_Edit"> #. #. #. #. \n" "Christian Meyer \n" "Jens Finke " #: ../src/main.c:488 ../atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: ../src/main.c:499 msgid "Congratulations! You have finished all Atomix levels." msgstr "Glückwunsch! Sie haben erfolgreich alle Atomix-Level abgeschlossen." #: ../src/main.c:509 msgid "Couldn't find at least one level." msgstr "Es konnte kein einziges Level gefunden werden." #: ../src/main.c:514 msgid "Do you want to finish the game?" msgstr "Möchte Sie das Spiel wirklich beenden?" #. create statistics frame #: ../src/main.c:728 msgid "Statistics" msgstr "Statistik" #: ../src/main.c:734 msgid "Level:" msgstr "Level:" #: ../src/main.c:735 msgid "Molecule:" msgstr "Molekül:" #: ../src/main.c:736 msgid "Formula:" msgstr "Formel:" #: ../src/main.c:737 msgid "Score:" msgstr "Punktzahl:" #: ../src/main.c:738 msgid "Time:" msgstr "Zeit:" #: ../src/main.c:778 #, c-format msgid "Couldn't find file: %s" msgstr "Datei konnte nicht gefunden werden: %s" #: ../src/theme-manager.c:135 msgid "No themes found." msgstr "Keine Themen gefunden." #: ../src/theme-manager.c:193 #, c-format msgid "Found theme '%s' in: %s" msgstr "Thema »%s« gefunden in: %s" #: ../atomix.desktop.in.h:2 msgid "Molecule puzzle game" msgstr "Molekül-Puzzelspiel" atomix-2.14.0/po/el.po0000644000175000017500000001256307763421517011421 00000000000000# Greek translation for atomix. # Copyright (C) 2002 Simos Xenitellis. # Simos Xenitellis , 2002. # msgid "" msgstr "" "Project-Id-Version: atomix 0.9.3\n" "POT-Creation-Date: 2003-12-03 18:47+0100\n" "PO-Revision-Date: 2002-02-19 16:49+0000\n" "Last-Translator: Simos Xenitellis \n" "Language-Team: Greek \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" # #: src/atomix-ui.xml.in.h:1 msgid "Continue paused game" msgstr "Συνέχεια σταματημένου παιχνιδιού" # #: src/atomix-ui.xml.in.h:2 msgid "E_xit" msgstr "Έ_ξοδος" # #: src/atomix-ui.xml.in.h:3 msgid "End a game" msgstr "Τερματισμός του παιχνιδιού" #: src/atomix-ui.xml.in.h:4 msgid "Exit game" msgstr "Έξοδος από το παιχνίδι" # #: src/atomix-ui.xml.in.h:5 msgid "Pause the running game" msgstr "Παύση του παιχνιδιού" # #: src/atomix-ui.xml.in.h:6 msgid "Reset level" msgstr "Επαναρχικοποίηση επιπέδου" #: src/atomix-ui.xml.in.h:7 msgid "Restores start situation" msgstr "Επαναφορά αρχικής κατάστασης" #: src/atomix-ui.xml.in.h:8 msgid "Set preferences" msgstr "Ρύθμιση προτιμήσεων" #: src/atomix-ui.xml.in.h:9 msgid "Skip _level" msgstr "Παράκαμψη επι_πέδου:" # #: src/atomix-ui.xml.in.h:10 msgid "Skip the current level" msgstr "Παρακάμπτει το τρέχον επίπεδο" # #: src/atomix-ui.xml.in.h:11 msgid "Start a new game" msgstr "Εκκίνηση νέου παιχνιδιού" # #: src/atomix-ui.xml.in.h:12 msgid "Undo the last move" msgstr "Αναίρεση τελευταίας κίνησης" # #: src/atomix-ui.xml.in.h:13 msgid "View game credits" msgstr "Προβολή συνεργατών του παιχνιδιού" # #: src/atomix-ui.xml.in.h:14 msgid "View highscores" msgstr "Προβολή πίνακα βαθμολογίας" #: src/atomix-ui.xml.in.h:15 msgid "_About" msgstr "_Περί" # #: src/atomix-ui.xml.in.h:16 msgid "_Continue game" msgstr "_Συνέχεια παιχνιδιού" # #: src/atomix-ui.xml.in.h:17 msgid "_Edit" msgstr "_Επεξεργασία" # #: src/atomix-ui.xml.in.h:18 msgid "_End Game" msgstr "_Τέλος Παιχνιδιού" # #: src/atomix-ui.xml.in.h:19 msgid "_Game" msgstr "_Παιχνίδι" # #: src/atomix-ui.xml.in.h:20 msgid "_Help" msgstr "_Βοήθεια" #: src/atomix-ui.xml.in.h:21 msgid "_New Game" msgstr "_Νέο Παιχνίδι" # #: src/atomix-ui.xml.in.h:22 msgid "_Pause game" msgstr "_Παύση παιχνιδιού" # #: src/atomix-ui.xml.in.h:23 msgid "_Preferences ..." msgstr "_Προτιμήσεις ..." # #: src/atomix-ui.xml.in.h:24 msgid "_Scores ..." msgstr "_Βαθμολογίες ..." # #: src/atomix-ui.xml.in.h:25 msgid "_Undo move" msgstr "_Ακύρωση κίνησης" #: src/level-manager.c:171 msgid "Couldn't find level sequence description." msgstr "Δε βρέθηκε περιγραφή ακολουθίας επιπέδου." #: src/level-manager.c:185 msgid "No level found." msgstr "Δε βρέθηκαν επίπεδα." #: src/level-manager.c:286 #, c-format msgid "Found level '%s' in: %s" msgstr "Βρέθηκε επίπεδο '%s' στο: %s" #: src/main.c:118 src/main.c:444 atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: src/main.c:145 msgid "Copyright (C) 1999-2002 Jens Finke" msgstr "Πνευματικά Δικαιώματα (C) 1999-2002 Jens Finke" #: src/main.c:146 msgid "A mind game about atoms and molecules." msgstr "Παιχνίδι σπαζοκεφαλιά με άτομα και μόρια." # #: src/main.c:456 msgid "Congratulations! You have finished all Atomix levels." msgstr "Συγχαρητήρια! Έχετε τερματίσει όλα τα επίπεδα του Atomix." #: src/main.c:467 msgid "Couldn't find at least one level." msgstr "Δε μπόρεσε να βρεθεί τουλάχιστον ένα επίπεδο." #: src/main.c:472 msgid "Do you want to finish the game?" msgstr "Θέλετε να τερματίσετε το παιχνίδι;" #: src/main.c:591 src/main.c:597 src/main.c:602 #, c-format msgid "Couldn't create directory: %s" msgstr "Aδύνατη η δημιουργία καταλόγου %s" #. create statistics frame #: src/main.c:701 msgid "Statistics" msgstr "Στατιστικά" #: src/main.c:707 msgid "Level:" msgstr "Επίπεδο:" #: src/main.c:708 msgid "Molecule:" msgstr "Μόριο:" #: src/main.c:709 msgid "Score:" msgstr "Βαθμολογία:" #: src/main.c:710 msgid "Time:" msgstr "Χρόνος:" #: src/main.c:750 #, c-format msgid "Couldn't find file: %s" msgstr "Αδύνατη η εύρεση του αρχείου: %s" #: src/theme-manager.c:141 msgid "No themes found." msgstr "Δε βρέθηκαν θέματα." #: src/theme-manager.c:205 #, c-format msgid "Found theme '%s' in: %s" msgstr "Βρέθηκε θέμα '%s' στο: %s" #: atomix.desktop.in.h:2 msgid "Molecule mind game" msgstr "Παιχνίδι σπαζοκεφαλιά μορίων" #~ msgid "Atomix Splash" #~ msgstr "Παφλασμός Atomix" #~ msgid "Game Paused" #~ msgstr "Το Παιχνίδι Σταμάτησε" #~ msgid "Game Over" #~ msgstr "Τέλος Παιγνιδιού" #~ msgid "Atomix - Molecule Mind Game" #~ msgstr "Atomix - Παιχνίδι Σπαζοκεφαλιά Μορίων" atomix-2.14.0/po/en_CA.po0000644000175000017500000001261310360617377011760 00000000000000# Canadian English translation of atomix. # Copyright (C) 2004-2006 Adam Weinberger and the GNOME Foundation # This file is distributed under the same licence as the atomix package. # Adam Weinberger , 2004, 2006. # # msgid "" msgstr "" "Project-Id-Version: atomix\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-01-09 21:41-0500\n" "PO-Revision-Date: 2005-04-30 18:20-0400\n" "Last-Translator: Adam Weinberger \n" "Language-Team: Canadian English \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../level/aceticacid.atomix.xml.h:1 msgid "Acetic Acid" msgstr "Acetic Acid" #: ../level/acetone.atomix.xml.h:1 msgid "Acetone" msgstr "Acetone" #: ../level/butanol.atomix.xml.h:1 msgid "Butanol" msgstr "Butanol" #: ../level/cyclobutane.atomix.xml.h:1 msgid "Cyclobutane" msgstr "Cyclobutane" #: ../level/dimethylether.atomix.xml.h:1 msgid "Dimethyl Ether" msgstr "Dimethyl Ether" #: ../level/ethanal.atomix.xml.h:1 msgid "Ethanal" msgstr "Ethanal" #: ../level/ethane.atomix.xml.h:1 msgid "Ethane" msgstr "Ethane" #: ../level/ethanol.atomix.xml.h:1 msgid "Ethanol" msgstr "Ethanol" #: ../level/ethylene.atomix.xml.h:1 msgid "Ethylene" msgstr "Ethylene" #: ../level/glycerin.atomix.xml.h:1 msgid "Glycerin" msgstr "Glycerin" #: ../level/lactic-acid.atomix.xml.h:1 msgid "Lactic Acid" msgstr "Lactic Acid" #: ../level/methanal.atomix.xml.h:1 msgid "Methanal" msgstr "Methanal" #: ../level/methane.atomix.xml.h:1 msgid "Methane" msgstr "Methane" #: ../level/methanol.atomix.xml.h:1 msgid "Methanol" msgstr "Methanol" #: ../level/propanal.atomix.xml.h:1 msgid "Propanal" msgstr "Propanal" #: ../level/propylene.atomix.xml.h:1 msgid "Propylene" msgstr "Propylene" #: ../level/pyran.atomix.xml.h:1 msgid "Pyran" msgstr "Pyran" #: ../level/transbutylen.atomix.xml.h:1 msgid "Trans Butylen" msgstr "Trans Butylene" #: ../level/water.atomix.xml.h:1 msgid "Water" msgstr "Water" #: ../src/atomix-ui.xml.h:1 msgid "Continue paused game" msgstr "Continue paused game" #: ../src/atomix-ui.xml.h:2 msgid "End a game" msgstr "End a game" #: ../src/atomix-ui.xml.h:3 msgid "Pause the running game" msgstr "Pause the running game" #: ../src/atomix-ui.xml.h:4 msgid "Reset level" msgstr "Reset level" #: ../src/atomix-ui.xml.h:5 msgid "Restores start situation" msgstr "Restores start situation" #: ../src/atomix-ui.xml.h:6 msgid "Set preferences" msgstr "Set preferences" #: ../src/atomix-ui.xml.h:7 msgid "Skip _level" msgstr "Skip _level" #: ../src/atomix-ui.xml.h:8 msgid "Skip the current level" msgstr "Skip the current level" #: ../src/atomix-ui.xml.h:9 msgid "Start a new game" msgstr "Start a new game" #: ../src/atomix-ui.xml.h:10 msgid "Undo the last move" msgstr "Undo the last move" #: ../src/atomix-ui.xml.h:11 msgid "View highscores" msgstr "View highscores" #: ../src/atomix-ui.xml.h:12 msgid "_Continue game" msgstr "_Continue game" #: ../src/atomix-ui.xml.h:13 msgid "_End Game" msgstr "_End Game" #: ../src/atomix-ui.xml.h:14 msgid "_Game" msgstr "_Game" #. submenu name="Edit" _label="_Edit"> #. #. #. #. " #: ../src/main.c:488 ../atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: ../src/main.c:499 msgid "Congratulations! You have finished all Atomix levels." msgstr "Congratulations! You have finished all Atomix levels." #: ../src/main.c:509 msgid "Couldn't find at least one level." msgstr "Couldn't find at least one level." #: ../src/main.c:514 msgid "Do you want to finish the game?" msgstr "Do you want to finish the game?" #. create statistics frame #: ../src/main.c:728 msgid "Statistics" msgstr "Statistics" #: ../src/main.c:734 msgid "Level:" msgstr "Level:" #: ../src/main.c:735 msgid "Molecule:" msgstr "Molecule:" #: ../src/main.c:736 msgid "Formula:" msgstr "Formula:" #: ../src/main.c:737 msgid "Score:" msgstr "Score:" #: ../src/main.c:738 msgid "Time:" msgstr "Time:" #: ../src/main.c:778 #, c-format msgid "Couldn't find file: %s" msgstr "Couldn't find file: %s" #: ../src/theme-manager.c:135 msgid "No themes found." msgstr "No themes found." #: ../src/theme-manager.c:193 #, c-format msgid "Found theme '%s' in: %s" msgstr "Found theme '%s' in: %s" #: ../atomix.desktop.in.h:2 msgid "Molecule puzzle game" msgstr "Molecule puzzle game" atomix-2.14.0/po/en_GB.po0000644000175000017500000001005610034100157011741 00000000000000# English (British) translation. # Copyright (C) 2004 THE atomix'S COPYRIGHT HOLDER # This file is distributed under the same license as the atomix package. # Gareth Owen , 2004. # msgid "" msgstr "" "Project-Id-Version: atomix\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2004-04-04 17:37-0400\n" "PO-Revision-Date: 2004-04-04 17:38-0400\n" "Last-Translator: Gareth Owen \n" "Language-Team: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: src/atomix-ui.xml.in.h:1 msgid "Continue paused game" msgstr "Continue paused game" #: src/atomix-ui.xml.in.h:2 msgid "E_xit" msgstr "E_xit" #: src/atomix-ui.xml.in.h:3 msgid "End a game" msgstr "End a game" #: src/atomix-ui.xml.in.h:4 msgid "Exit game" msgstr "Exit game" #: src/atomix-ui.xml.in.h:5 msgid "Pause the running game" msgstr "Pause the running game" #: src/atomix-ui.xml.in.h:6 msgid "Reset level" msgstr "Reset level" #: src/atomix-ui.xml.in.h:7 msgid "Restores start situation" msgstr "Restores start situation" #: src/atomix-ui.xml.in.h:8 msgid "Set preferences" msgstr "Set preferences" #: src/atomix-ui.xml.in.h:9 msgid "Skip _level" msgstr "Skip _level" #: src/atomix-ui.xml.in.h:10 msgid "Skip the current level" msgstr "Skip the current level" #: src/atomix-ui.xml.in.h:11 msgid "Start a new game" msgstr "Start a new game" #: src/atomix-ui.xml.in.h:12 msgid "Undo the last move" msgstr "Undo the last move" #: src/atomix-ui.xml.in.h:13 msgid "View game credits" msgstr "View game credits" #: src/atomix-ui.xml.in.h:14 msgid "View highscores" msgstr "View highscores" #: src/atomix-ui.xml.in.h:15 msgid "_About" msgstr "_About" #: src/atomix-ui.xml.in.h:16 msgid "_Continue game" msgstr "_Continue game" #: src/atomix-ui.xml.in.h:17 msgid "_Edit" msgstr "_Edit" #: src/atomix-ui.xml.in.h:18 msgid "_End Game" msgstr "_End Game" #: src/atomix-ui.xml.in.h:19 msgid "_Game" msgstr "_Game" #: src/atomix-ui.xml.in.h:20 msgid "_Help" msgstr "_Help" #: src/atomix-ui.xml.in.h:21 msgid "_New Game" msgstr "_New Game" #: src/atomix-ui.xml.in.h:22 msgid "_Pause game" msgstr "_Pause game" #: src/atomix-ui.xml.in.h:23 msgid "_Preferences ..." msgstr "_Preferences ..." #: src/atomix-ui.xml.in.h:24 msgid "_Scores ..." msgstr "_Scores ..." #: src/atomix-ui.xml.in.h:25 msgid "_Undo move" msgstr "_Undo move" #: src/level-manager.c:171 msgid "Couldn't find level sequence description." msgstr "Couldn't find level sequence description." #: src/level-manager.c:185 msgid "No level found." msgstr "No level found." #: src/level-manager.c:286 #, c-format msgid "Found level '%s' in: %s" msgstr "Found level '%s' in: %s" #: src/main.c:118 src/main.c:444 atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: src/main.c:145 msgid "Copyright (C) 1999-2002 Jens Finke" msgstr "Copyright (C) 1999-2002 Jens Finke" #: src/main.c:146 msgid "A mind game about atoms and molecules." msgstr "A mind game about atoms and molecules." #: src/main.c:456 msgid "Congratulations! You have finished all Atomix levels." msgstr "Congratulations! You have finished all Atomix levels." #: src/main.c:467 msgid "Couldn't find at least one level." msgstr "Couldn't find at least one level." #: src/main.c:472 msgid "Do you want to finish the game?" msgstr "Do you want to finish the game?" #: src/main.c:591 src/main.c:597 src/main.c:602 #, c-format msgid "Couldn't create directory: %s" msgstr "Couldn't create directory: %s" #. create statistics frame #: src/main.c:701 msgid "Statistics" msgstr "Statistics" #: src/main.c:707 msgid "Level:" msgstr "Level:" #: src/main.c:708 msgid "Molecule:" msgstr "Molecule:" #: src/main.c:709 msgid "Score:" msgstr "Score:" #: src/main.c:710 msgid "Time:" msgstr "Time:" #: src/main.c:750 #, c-format msgid "Couldn't find file: %s" msgstr "Couldn't find file: %s" #: src/theme-manager.c:141 msgid "No themes found." msgstr "No themes found." #: src/theme-manager.c:205 #, c-format msgid "Found theme '%s' in: %s" msgstr "Found theme '%s' in: %s" #: atomix.desktop.in.h:2 msgid "Molecule mind game" msgstr "Molecule mind game" atomix-2.14.0/po/es.po0000644000175000017500000001473610357605714011430 00000000000000# translation of es.po to Spanish # Spanish/Spain translation of ATOMIX. # Copyright (C) 2001, 2003 Free Software Foundation, Inc. # Álvaro Peña , 2001. # Francisco Javier F. Serrador , 2003. # msgid "" msgstr "" "Project-Id-Version: es\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-01-07 01:29+0100\n" "PO-Revision-Date: 2006-01-07 01:30+0100\n" "Last-Translator: Francisco Javier F. Serrador \n" "Language-Team: Spanish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.0.2\n" #: ../level/aceticacid.atomix.xml.h:1 msgid "Acetic Acid" msgstr "Ácido acético" #: ../level/acetone.atomix.xml.h:1 msgid "Acetone" msgstr "Acetona" #: ../level/butanol.atomix.xml.h:1 msgid "Butanol" msgstr "Butanol" #: ../level/cyclobutane.atomix.xml.h:1 msgid "Cyclobutane" msgstr "Ciclobutano" #: ../level/dimethylether.atomix.xml.h:1 msgid "Dimethyl Ether" msgstr "Dimetil-éter" #: ../level/ethanal.atomix.xml.h:1 msgid "Ethanal" msgstr "Etanal" #: ../level/ethane.atomix.xml.h:1 msgid "Ethane" msgstr "Etano" #: ../level/ethanol.atomix.xml.h:1 msgid "Ethanol" msgstr "Etanol" #: ../level/ethylene.atomix.xml.h:1 msgid "Ethylene" msgstr "Etileno" #: ../level/glycerin.atomix.xml.h:1 msgid "Glycerin" msgstr "Glicerina" #: ../level/lactic-acid.atomix.xml.h:1 msgid "Lactic Acid" msgstr "Ácido láctico" #: ../level/methanal.atomix.xml.h:1 msgid "Methanal" msgstr "Metanal" #: ../level/methane.atomix.xml.h:1 msgid "Methane" msgstr "Metano" #: ../level/methanol.atomix.xml.h:1 msgid "Methanol" msgstr "Metanol" #: ../level/propanal.atomix.xml.h:1 msgid "Propanal" msgstr "Propanal" #: ../level/propylene.atomix.xml.h:1 msgid "Propylene" msgstr "Propileno" #: ../level/pyran.atomix.xml.h:1 msgid "Pyran" msgstr "Pirano" #: ../level/transbutylen.atomix.xml.h:1 msgid "Trans Butylen" msgstr "Transbutileno" #: ../level/water.atomix.xml.h:1 msgid "Water" msgstr "Agua" #: ../src/atomix-ui.xml.h:1 msgid "Continue paused game" msgstr "Continuar juego pausado" #: ../src/atomix-ui.xml.h:2 msgid "End a game" msgstr "Finalizar el juego" #: ../src/atomix-ui.xml.h:3 msgid "Pause the running game" msgstr "Pausar el juego actual" #: ../src/atomix-ui.xml.h:4 msgid "Reset level" msgstr "Reiniciar nivel" #: ../src/atomix-ui.xml.h:5 msgid "Restores start situation" msgstr "Restaura la situación inicial" #: ../src/atomix-ui.xml.h:6 msgid "Set preferences" msgstr "Establecer preferencias" #: ../src/atomix-ui.xml.h:7 msgid "Skip _level" msgstr "_Saltar nivel" #: ../src/atomix-ui.xml.h:8 msgid "Skip the current level" msgstr "Saltar el nivel actual" #: ../src/atomix-ui.xml.h:9 msgid "Start a new game" msgstr "Inicia un juego" #: ../src/atomix-ui.xml.h:10 msgid "Undo the last move" msgstr "Deshacer el último movimiento" #: ../src/atomix-ui.xml.h:11 msgid "View highscores" msgstr "Ver puntuaciones" #: ../src/atomix-ui.xml.h:12 msgid "_Continue game" msgstr "_Continuar jugando" #: ../src/atomix-ui.xml.h:13 msgid "_Edit" msgstr "_Editar" #: ../src/atomix-ui.xml.h:14 msgid "_End Game" msgstr "_Finalizar Juego" #: ../src/atomix-ui.xml.h:15 msgid "_Game" msgstr "_Juego" #: ../src/atomix-ui.xml.h:16 msgid "_Help" msgstr "A_yuda" #: ../src/atomix-ui.xml.h:17 msgid "_New Game" msgstr "Juego _nuevo" #: ../src/atomix-ui.xml.h:18 msgid "_Pause game" msgstr "_Pausar juego" #: ../src/atomix-ui.xml.h:19 msgid "_Preferences ..." msgstr "_Preferencias..." #: ../src/atomix-ui.xml.h:20 msgid "_Scores ..." msgstr "_Puntuaciones..." #: ../src/atomix-ui.xml.h:21 msgid "_Undo move" msgstr "_Deshacer movimiento" #: ../src/level-manager.c:174 msgid "Couldn't find level sequence description." msgstr "No se puede encontrar secuencia de descripción del nivel" #: ../src/level-manager.c:188 msgid "No level found." msgstr "No se encontó ningún nivel." #: ../src/level-manager.c:284 #, c-format msgid "Found level '%s' in: %s" msgstr "Encontrado nivel «%s» en: %s" #: ../src/main.c:126 msgid "You have not achieved any scores yet. Play a little before coming back!" msgstr "No ha conseguido ningún punto aún. Juegue un poco actes de volver." #: ../src/main.c:173 msgid "A puzzle game about atoms and molecules" msgstr "Un juego de puzzles sobre átomos y moléculas" #: ../src/main.c:177 msgid "translator-credits" msgstr "Francisco Javier F. Serrador " #: ../src/main.c:488 ../atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: ../src/main.c:499 msgid "Congratulations! You have finished all Atomix levels." msgstr "¡Felicidades! Ha terminado todos los niveles de Atomix." #: ../src/main.c:509 msgid "Couldn't find at least one level." msgstr "No se pudo encontrar al menos un nivel." #: ../src/main.c:514 msgid "Do you want to finish the game?" msgstr "¿Quiere terminar el juego?" #. create statistics frame #: ../src/main.c:728 msgid "Statistics" msgstr "Estadísticas" #: ../src/main.c:734 msgid "Level:" msgstr "Nivel:" #: ../src/main.c:735 msgid "Molecule:" msgstr "Molécula:" #: ../src/main.c:736 msgid "Formula:" msgstr "Fórmula:" #: ../src/main.c:737 msgid "Score:" msgstr "Puntuación:" #: ../src/main.c:738 msgid "Time:" msgstr "Tiempo:" #: ../src/main.c:778 #, c-format msgid "Couldn't find file: %s" msgstr "No se pudo encontrar el archivo: %s" #: ../src/theme-manager.c:135 msgid "No themes found." msgstr "No se encontraron temas." #: ../src/theme-manager.c:193 #, c-format msgid "Found theme '%s' in: %s" msgstr "Se encontró el tema «%s» en: %s" #: ../atomix.desktop.in.h:2 msgid "Molecule puzzle game" msgstr "Puzzle con moléculas" #~ msgid "E_xit" #~ msgstr "_Salir" #~ msgid "Exit game" #~ msgstr "Salir del juego" #~ msgid "View game credits" #~ msgstr "Ver creditos del juego" #~ msgid "_About" #~ msgstr "_Acerca" #~ msgid "Copyright (C) 1999-2002 Jens Finke" #~ msgstr "Copyright © 1999-2002 Jens Finke" #~ msgid "Couldn't create directory: %s" #~ msgstr "No se puede crear el directorio: %s" #~ msgid "Game Paused" #~ msgstr "Juego Parado" #~ msgid "Game Over" #~ msgstr "Juego Terminado" #~ msgid "Atomix - Molecule Mind Game" #~ msgstr "Atomix - Juego Mental con Moléculas" #~ msgid "No more undo levels." #~ msgstr "No hay mas niveles por hacer." #~ msgid "This is the last level. You can't skip any further." #~ msgstr "Este es el último nivel. No puede saltar ninguno más." #~ msgid "XML file %s not found." #~ msgstr "No se pudo encontrar el fichero XML %s." atomix-2.14.0/po/et.po0000644000175000017500000001315010363652006011407 00000000000000# Atomix'i eesti keele tõlge. # Estonian translation of atomix. # # Copyright (C) 2002, 2005, 2006 Free Software Foundation, Inc. # This file is distributed under the same license as the atomix package. # # Tõivo Leedjärv , 2002. # Ivar Smolin , 2005, 2006. # Jüri Ruut, 2005. # msgid "" msgstr "" "Project-Id-Version: atomix HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-01-15 13:44+0100\n" "PO-Revision-Date: 2006-01-15 15:24+0200\n" "Last-Translator: Ivar Smolin \n" "Language-Team: Estonian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../level/aceticacid.atomix.xml.h:1 msgid "Acetic Acid" msgstr "Etaanhape" #: ../level/acetone.atomix.xml.h:1 msgid "Acetone" msgstr "Atsetoon" #: ../level/butanol.atomix.xml.h:1 msgid "Butanol" msgstr "Butanool" #: ../level/cyclobutane.atomix.xml.h:1 msgid "Cyclobutane" msgstr "Tsüklobutaan" #: ../level/dimethylether.atomix.xml.h:1 msgid "Dimethyl Ether" msgstr "Dimetüüleeter" #: ../level/ethanal.atomix.xml.h:1 msgid "Ethanal" msgstr "Etanaal" #: ../level/ethane.atomix.xml.h:1 msgid "Ethane" msgstr "Etaan" #: ../level/ethanol.atomix.xml.h:1 msgid "Ethanol" msgstr "Etanool" #: ../level/ethylene.atomix.xml.h:1 msgid "Ethylene" msgstr "Eteen" #: ../level/glycerin.atomix.xml.h:1 msgid "Glycerin" msgstr "Glütseriin" #: ../level/lactic-acid.atomix.xml.h:1 msgid "Lactic Acid" msgstr "Piimhape" #: ../level/methanal.atomix.xml.h:1 msgid "Methanal" msgstr "Metanaal" #: ../level/methane.atomix.xml.h:1 msgid "Methane" msgstr "Metaan" #: ../level/methanol.atomix.xml.h:1 msgid "Methanol" msgstr "Metanool" #: ../level/propanal.atomix.xml.h:1 msgid "Propanal" msgstr "Propanaal" #: ../level/propylene.atomix.xml.h:1 msgid "Propylene" msgstr "Propeen" #: ../level/pyran.atomix.xml.h:1 msgid "Pyran" msgstr "Püraan" #: ../level/transbutylen.atomix.xml.h:1 msgid "Trans Butylen" msgstr "Trans-buteen" #: ../level/water.atomix.xml.h:1 msgid "Water" msgstr "Vesi" #: ../src/atomix-ui.xml.h:1 msgid "Continue paused game" msgstr "Jätka peatatud mängu" #: ../src/atomix-ui.xml.h:2 msgid "End a game" msgstr "Lõpeta mäng" #: ../src/atomix-ui.xml.h:3 msgid "Pause the running game" msgstr "Peata aktiivne mäng" #: ../src/atomix-ui.xml.h:4 msgid "Reset level" msgstr "Algväärtusta tase" #: ../src/atomix-ui.xml.h:5 msgid "Restores start situation" msgstr "Taastab taseme algoleku" #: ../src/atomix-ui.xml.h:6 msgid "Set preferences" msgstr "Määra eelistused" #: ../src/atomix-ui.xml.h:7 msgid "Skip _level" msgstr "_Hüppa järgmisele tasemele" #: ../src/atomix-ui.xml.h:8 msgid "Skip the current level" msgstr "Jäta praegune tase vahele" #: ../src/atomix-ui.xml.h:9 msgid "Start a new game" msgstr "Alusta uut mängu" #: ../src/atomix-ui.xml.h:10 msgid "Undo the last move" msgstr "Unusta viimane liigutus" #: ../src/atomix-ui.xml.h:11 msgid "View highscores" msgstr "Vaata parimaid tulemusi" #: ../src/atomix-ui.xml.h:12 msgid "_Continue game" msgstr "_Jätka mängu" #: ../src/atomix-ui.xml.h:13 msgid "_End Game" msgstr "_Lõpeta mäng" #: ../src/atomix-ui.xml.h:14 msgid "_Game" msgstr "_Mäng" #. submenu name="Edit" _label="_Edit"> #. #. #. #. , 2002.\n" "Ivar Smolin , 2005, 2006.\n" "Jüri Ruut, 2005." #: ../src/main.c:488 ../atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: ../src/main.c:499 msgid "Congratulations! You have finished all Atomix levels." msgstr "Õnnitlused! Sa lõpetasid kõis Atomix tasemed." #: ../src/main.c:509 msgid "Couldn't find at least one level." msgstr "Ei leia vähemalt ühte taset." #: ../src/main.c:514 msgid "Do you want to finish the game?" msgstr "Kas sa tahad mängu lõpetada?" #. create statistics frame #: ../src/main.c:728 msgid "Statistics" msgstr "Statistika" #: ../src/main.c:734 msgid "Level:" msgstr "Tase:" #: ../src/main.c:735 msgid "Molecule:" msgstr "Molekul:" #: ../src/main.c:736 msgid "Formula:" msgstr "Valem:" #: ../src/main.c:737 msgid "Score:" msgstr "Punkte:" #: ../src/main.c:738 msgid "Time:" msgstr "Aeg:" #: ../src/main.c:778 #, c-format msgid "Couldn't find file: %s" msgstr "Ei leia faili: %s" #: ../src/theme-manager.c:135 msgid "No themes found." msgstr "Ei leia ühtegi teemat." #: ../src/theme-manager.c:193 #, c-format msgid "Found theme '%s' in: %s" msgstr "Teema '%s' leitud failist: %s" #: ../atomix.desktop.in.h:2 msgid "Molecule puzzle game" msgstr "Mõttemäng molekulidest" atomix-2.14.0/po/fa.po0000644000175000017500000001055107763421517011402 00000000000000# Persian translation of atomix. # Copyright (C) 2003 The FarsiWeb Project Group # Roozbeh Pournader , 2003. # msgid "" msgstr "" "Project-Id-Version: atomix\n" "POT-Creation-Date: 2003-12-03 18:47+0100\n" "PO-Revision-Date: 2003-02-23 16:24+0330\n" "Last-Translator: Roozbeh Pournader \n" "Language-Team: Persian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 0.9.6\n" #: src/atomix-ui.xml.in.h:1 msgid "Continue paused game" msgstr "ادامه‌ی بازی متوقف‌شده" #: src/atomix-ui.xml.in.h:2 msgid "E_xit" msgstr "خروج" #: src/atomix-ui.xml.in.h:3 msgid "End a game" msgstr "اتمام بازی" #: src/atomix-ui.xml.in.h:4 msgid "Exit game" msgstr "خروج از بازی" #: src/atomix-ui.xml.in.h:5 msgid "Pause the running game" msgstr "توقف بازی در حال اجرا" #: src/atomix-ui.xml.in.h:6 msgid "Reset level" msgstr "از اول مرحله" #: src/atomix-ui.xml.in.h:7 msgid "Restores start situation" msgstr "بازیابی وضعیت شروع" #: src/atomix-ui.xml.in.h:8 msgid "Set preferences" msgstr "تنظیم ترجیحات" #: src/atomix-ui.xml.in.h:9 msgid "Skip _level" msgstr "پریدن از مرحله" #: src/atomix-ui.xml.in.h:10 msgid "Skip the current level" msgstr "پریدن از مرحله‌ی فعلی" #: src/atomix-ui.xml.in.h:11 msgid "Start a new game" msgstr "شروع بازی جدید" #: src/atomix-ui.xml.in.h:12 msgid "Undo the last move" msgstr "برگشت حرکت قبلی" #: src/atomix-ui.xml.in.h:13 msgid "View game credits" msgstr "" #: src/atomix-ui.xml.in.h:14 msgid "View highscores" msgstr "نمایش امتیازات بالا" #: src/atomix-ui.xml.in.h:15 msgid "_About" msgstr "درباره" #: src/atomix-ui.xml.in.h:16 msgid "_Continue game" msgstr "ادامه‌ی بازی" #: src/atomix-ui.xml.in.h:17 msgid "_Edit" msgstr "ویرایش" #: src/atomix-ui.xml.in.h:18 msgid "_End Game" msgstr "پایان بازی" #: src/atomix-ui.xml.in.h:19 msgid "_Game" msgstr "بازی" #: src/atomix-ui.xml.in.h:20 msgid "_Help" msgstr "راهنما" #: src/atomix-ui.xml.in.h:21 msgid "_New Game" msgstr "بازی جدید" #: src/atomix-ui.xml.in.h:22 msgid "_Pause game" msgstr "توقف بازی" #: src/atomix-ui.xml.in.h:23 msgid "_Preferences ..." msgstr "ترجیحات ..." #: src/atomix-ui.xml.in.h:24 msgid "_Scores ..." msgstr "امتیازات ..." #: src/atomix-ui.xml.in.h:25 msgid "_Undo move" msgstr "برگشت حرکت" #: src/level-manager.c:171 msgid "Couldn't find level sequence description." msgstr "" #: src/level-manager.c:185 msgid "No level found." msgstr "هیچ مرحلهای یافت نشد." #: src/level-manager.c:286 #, c-format msgid "Found level '%s' in: %s" msgstr "" #: src/main.c:118 src/main.c:444 atomix.desktop.in.h:1 msgid "Atomix" msgstr "اتومیکس" #: src/main.c:145 msgid "Copyright (C) 1999-2002 Jens Finke" msgstr "Copyright (C) 1999-2002 Jens Finke" #: src/main.c:146 msgid "A mind game about atoms and molecules." msgstr "یک بازی فکری درباره‌ی اتم‌ها و مولکول‌ها" #: src/main.c:456 msgid "Congratulations! You have finished all Atomix levels." msgstr "تبریک! شما همه‌ی مرحله‌های اتومیکس را تمام کردید." #: src/main.c:467 msgid "Couldn't find at least one level." msgstr "" #: src/main.c:472 msgid "Do you want to finish the game?" msgstr "آیا می‌خواهید بازی را تمام کنید؟" #: src/main.c:591 src/main.c:597 src/main.c:602 #, c-format msgid "Couldn't create directory: %s" msgstr "نمی‌توان شاخه را ایجاد کرد: %s" #. create statistics frame #: src/main.c:701 msgid "Statistics" msgstr "آمار" #: src/main.c:707 msgid "Level:" msgstr "مرحله:" #: src/main.c:708 msgid "Molecule:" msgstr "مولکول:" #: src/main.c:709 msgid "Score:" msgstr "امتیاز:" #: src/main.c:710 msgid "Time:" msgstr "زمان:" #: src/main.c:750 #, c-format msgid "Couldn't find file: %s" msgstr "نمی‌توان پرونده را یافت: %s" #: src/theme-manager.c:141 msgid "No themes found." msgstr "هیچ تمی پیدا نشد." #: src/theme-manager.c:205 #, c-format msgid "Found theme '%s' in: %s" msgstr "" #: atomix.desktop.in.h:2 msgid "Molecule mind game" msgstr "بازی فکری مولکولی" atomix-2.14.0/po/fi.po0000644000175000017500000001416310357730676011417 00000000000000# Atomix Finnish translation. # Suomennos: http://gnome.fi/ # # Copyright (C) 2002 Free Software Foundation, Inc. # Lauri Nurmi , 2002. # Ilkka Tuohela , 2005. # msgid "" msgstr "" "Project-Id-Version: atomix\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-01-07 12:38+0200\n" "PO-Revision-Date: 2006-01-07 14:17+0200\n" "Last-Translator: Ilkka Tuohela \n" "Language-Team: Finnish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../level/aceticacid.atomix.xml.h:1 msgid "Acetic Acid" msgstr "Etikkahappo" #: ../level/acetone.atomix.xml.h:1 msgid "Acetone" msgstr "Asetoni" #: ../level/butanol.atomix.xml.h:1 msgid "Butanol" msgstr "Butanoli" #: ../level/cyclobutane.atomix.xml.h:1 msgid "Cyclobutane" msgstr "Syklobutaani" #: ../level/dimethylether.atomix.xml.h:1 msgid "Dimethyl Ether" msgstr "Dimetyylieetteri" #: ../level/ethanal.atomix.xml.h:1 msgid "Ethanal" msgstr "Asetaldehydi" #: ../level/ethane.atomix.xml.h:1 msgid "Ethane" msgstr "Etaani" #: ../level/ethanol.atomix.xml.h:1 msgid "Ethanol" msgstr "Etanoli" #: ../level/ethylene.atomix.xml.h:1 msgid "Ethylene" msgstr "Etyleeni" #: ../level/glycerin.atomix.xml.h:1 msgid "Glycerin" msgstr "Glyseriini" #: ../level/lactic-acid.atomix.xml.h:1 msgid "Lactic Acid" msgstr "Maitohappo" #: ../level/methanal.atomix.xml.h:1 msgid "Methanal" msgstr "Formaldehydi" #: ../level/methane.atomix.xml.h:1 msgid "Methane" msgstr "Metaani" #: ../level/methanol.atomix.xml.h:1 msgid "Methanol" msgstr "Metanoli" #: ../level/propanal.atomix.xml.h:1 msgid "Propanal" msgstr "Propionaldehydi" #: ../level/propylene.atomix.xml.h:1 msgid "Propylene" msgstr "Propyleeni" #: ../level/pyran.atomix.xml.h:1 msgid "Pyran" msgstr "Pyraani" #: ../level/transbutylen.atomix.xml.h:1 msgid "Trans Butylen" msgstr "Trans-butyleeni" #: ../level/water.atomix.xml.h:1 msgid "Water" msgstr "Vesi" #: ../src/atomix-ui.xml.h:1 msgid "Continue paused game" msgstr "Jatka pysäytettyä peliä" #: ../src/atomix-ui.xml.h:2 msgid "End a game" msgstr "Lopeta peli" #: ../src/atomix-ui.xml.h:3 msgid "Pause the running game" msgstr "Pysäytä peli" #: ../src/atomix-ui.xml.h:4 msgid "Reset level" msgstr "Aloita taso uudelleen" #: ../src/atomix-ui.xml.h:5 msgid "Restores start situation" msgstr "Palauttaa lähtötilanteen" #: ../src/atomix-ui.xml.h:6 msgid "Set preferences" msgstr "Määritä asetukset" #: ../src/atomix-ui.xml.h:7 msgid "Skip _level" msgstr "Ohita _taso" #: ../src/atomix-ui.xml.h:8 msgid "Skip the current level" msgstr "Ohita nykyinen taso" #: ../src/atomix-ui.xml.h:9 msgid "Start a new game" msgstr "Aloita uusi peli" #: ../src/atomix-ui.xml.h:10 msgid "Undo the last move" msgstr "Kumoa viimeinen siirto" #: ../src/atomix-ui.xml.h:11 msgid "View highscores" msgstr "Näytä parhaat tulokset" #: ../src/atomix-ui.xml.h:12 msgid "_Continue game" msgstr "_Jatka peliä" #: ../src/atomix-ui.xml.h:13 msgid "_End Game" msgstr "_Lopeta peli" #: ../src/atomix-ui.xml.h:14 msgid "_Game" msgstr "_Peli" #. submenu name="Edit" _label="_Edit"> #. #. #. #. , 2001-2002. # msgid "" msgstr "" "Project-Id-Version: atomix 0.9.4\n" "POT-Creation-Date: 2003-12-03 18:47+0100\n" "PO-Revision-Date: 2002-07-24 23:58+0200\n" "Last-Translator: Christophe Merlet (RedFox) \n" "Language-Team: GNOME French Team \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: src/atomix-ui.xml.in.h:1 msgid "Continue paused game" msgstr "Continuer la partie suspendue" #: src/atomix-ui.xml.in.h:2 msgid "E_xit" msgstr "_Quitter" #: src/atomix-ui.xml.in.h:3 msgid "End a game" msgstr "Fini un jeu" #: src/atomix-ui.xml.in.h:4 msgid "Exit game" msgstr "Quitte le jeu" #: src/atomix-ui.xml.in.h:5 msgid "Pause the running game" msgstr "Suspendre la partie en cours" #: src/atomix-ui.xml.in.h:6 msgid "Reset level" msgstr "Initialiser le niveau" #: src/atomix-ui.xml.in.h:7 msgid "Restores start situation" msgstr "Restore la situation de départ" #: src/atomix-ui.xml.in.h:8 msgid "Set preferences" msgstr "Défini les préférences" #: src/atomix-ui.xml.in.h:9 msgid "Skip _level" msgstr "_Passer le niveau" #: src/atomix-ui.xml.in.h:10 msgid "Skip the current level" msgstr "Saute le niveau en cours" #: src/atomix-ui.xml.in.h:11 msgid "Start a new game" msgstr "Démarrer un nouveau jeu" #: src/atomix-ui.xml.in.h:12 msgid "Undo the last move" msgstr "Annule le dernier mouvement" #: src/atomix-ui.xml.in.h:13 msgid "View game credits" msgstr "Voir les crédits du jeu" #: src/atomix-ui.xml.in.h:14 msgid "View highscores" msgstr "Voir les meilleurs scores" #: src/atomix-ui.xml.in.h:15 msgid "_About" msgstr "À _propos" #: src/atomix-ui.xml.in.h:16 msgid "_Continue game" msgstr "_Continuer le jeu" #: src/atomix-ui.xml.in.h:17 msgid "_Edit" msgstr "_Éditer" #: src/atomix-ui.xml.in.h:18 msgid "_End Game" msgstr "_Terminer la partie" #: src/atomix-ui.xml.in.h:19 msgid "_Game" msgstr "_Jeu" #: src/atomix-ui.xml.in.h:20 msgid "_Help" msgstr "_Aide" #: src/atomix-ui.xml.in.h:21 msgid "_New Game" msgstr "_Nouveau jeu" #: src/atomix-ui.xml.in.h:22 msgid "_Pause game" msgstr "_Suspendre le jeu" #: src/atomix-ui.xml.in.h:23 msgid "_Preferences ..." msgstr "_Préférences..." #: src/atomix-ui.xml.in.h:24 msgid "_Scores ..." msgstr "_Scores..." #: src/atomix-ui.xml.in.h:25 msgid "_Undo move" msgstr "_Annuler le mouvement" #: src/level-manager.c:171 msgid "Couldn't find level sequence description." msgstr "Ne peut trouver le niveau de la description de séquence." #: src/level-manager.c:185 msgid "No level found." msgstr "Aucun niveau trouvé" #: src/level-manager.c:286 #, c-format msgid "Found level '%s' in: %s" msgstr "A trouvé le niveau « %s » dans : %s" #: src/main.c:118 src/main.c:444 atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: src/main.c:145 msgid "Copyright (C) 1999-2002 Jens Finke" msgstr "Copyright © 1999-2002 Jens Finke" #: src/main.c:146 msgid "A mind game about atoms and molecules." msgstr "Un jeu de mémoire sur les atomes et molécules." #: src/main.c:456 msgid "Congratulations! You have finished all Atomix levels." msgstr "Félicitations ! Vous avez fini tous les niveaux d'Atomix." #: src/main.c:467 msgid "Couldn't find at least one level." msgstr "Ne peut trouver au moins un niveau." #: src/main.c:472 msgid "Do you want to finish the game?" msgstr "Voulez-vous finir le jeu ?" #: src/main.c:591 src/main.c:597 src/main.c:602 #, c-format msgid "Couldn't create directory: %s" msgstr "Ne peut créer le répertoire : %s" #. create statistics frame #: src/main.c:701 msgid "Statistics" msgstr "Statistiques" #: src/main.c:707 msgid "Level:" msgstr "Niveau :" #: src/main.c:708 msgid "Molecule:" msgstr "Molécule :" #: src/main.c:709 msgid "Score:" msgstr "Score :" #: src/main.c:710 msgid "Time:" msgstr "Date :" #: src/main.c:750 #, c-format msgid "Couldn't find file: %s" msgstr "Ne peut trouver le fichier : %s" #: src/theme-manager.c:141 msgid "No themes found." msgstr "Aucun thèmes trouvé." #: src/theme-manager.c:205 #, c-format msgid "Found theme '%s' in: %s" msgstr "A trouvé le thème « %s » dans : %s" #: atomix.desktop.in.h:2 msgid "Molecule mind game" msgstr "Jeu de mémoire moléculaire" #~ msgid "Atomix Splash" #~ msgstr "Écran d'acceuil d'Atomix" #~ msgid "Game Paused" #~ msgstr "Jeu suspendu" #~ msgid "Game Over" #~ msgstr "Perdu" #~ msgid "Atomix - Molecule Mind Game" #~ msgstr "Atomix - Jeu de mémoire moléculaire" #~ msgid "Grid" #~ msgstr "Grille" #~ msgid "_Level" #~ msgstr "_Niveau" #~ msgid "_Theme" #~ msgstr "_Thème" #~ msgid "New" #~ msgstr "Nouveau" #~ msgid "New File" #~ msgstr "Nouveau fichier" #~ msgid "Open" #~ msgstr "Ouvrir" #~ msgid "Save" #~ msgstr "Enregistrer" atomix-2.14.0/po/ga.po0000644000175000017500000000716510112573505011375 00000000000000# Irish (gaeilge) translations for atomix # Copyright (C) 2004 Alastair McKinstry # This file is distributed under the same license as the atomix package. # Alastair McKinstry , 2004. # msgid "" msgstr "" "Project-Id-Version: atomix HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2003-12-17 03:03+0100\n" "PO-Revision-Date: 2004-0-22 08:02+0000\n" "Last-Translator: Alastair McKinstry \n" "Language-Team: Irish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: src/atomix-ui.xml.in.h:1 msgid "Continue paused game" msgstr "" #: src/atomix-ui.xml.in.h:2 msgid "E_xit" msgstr "_Ealu" #: src/atomix-ui.xml.in.h:3 msgid "End a game" msgstr "" #: src/atomix-ui.xml.in.h:4 msgid "Exit game" msgstr "Ealu as cluiche" #: src/atomix-ui.xml.in.h:5 msgid "Pause the running game" msgstr "" #: src/atomix-ui.xml.in.h:6 msgid "Reset level" msgstr "" #: src/atomix-ui.xml.in.h:7 msgid "Restores start situation" msgstr "" #: src/atomix-ui.xml.in.h:8 msgid "Set preferences" msgstr "" #: src/atomix-ui.xml.in.h:9 msgid "Skip _level" msgstr "" #: src/atomix-ui.xml.in.h:10 msgid "Skip the current level" msgstr "" #: src/atomix-ui.xml.in.h:11 msgid "Start a new game" msgstr "Tosaigh cluiche nua" #: src/atomix-ui.xml.in.h:12 msgid "Undo the last move" msgstr "" #: src/atomix-ui.xml.in.h:13 msgid "View game credits" msgstr "" #: src/atomix-ui.xml.in.h:14 msgid "View highscores" msgstr "" #: src/atomix-ui.xml.in.h:15 msgid "_About" msgstr "_Faoi" #: src/atomix-ui.xml.in.h:16 msgid "_Continue game" msgstr "" #: src/atomix-ui.xml.in.h:17 msgid "_Edit" msgstr "_Eagar" #: src/atomix-ui.xml.in.h:18 msgid "_End Game" msgstr "" #: src/atomix-ui.xml.in.h:19 msgid "_Game" msgstr "_Cluiche" #: src/atomix-ui.xml.in.h:20 msgid "_Help" msgstr "Cab_hair" #: src/atomix-ui.xml.in.h:21 msgid "_New Game" msgstr "Cluiche _Nua" #: src/atomix-ui.xml.in.h:22 msgid "_Pause game" msgstr "_Cas cluiche" #: src/atomix-ui.xml.in.h:23 msgid "_Preferences ..." msgstr "_Roghnachais ..." #: src/atomix-ui.xml.in.h:24 msgid "_Scores ..." msgstr "_Scoraí ..." #: src/atomix-ui.xml.in.h:25 msgid "_Undo move" msgstr "" #: src/level-manager.c:171 msgid "Couldn't find level sequence description." msgstr "" #: src/level-manager.c:185 msgid "No level found." msgstr "" #: src/level-manager.c:286 #, c-format msgid "Found level '%s' in: %s" msgstr "" #: src/main.c:118 src/main.c:444 atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: src/main.c:145 msgid "Copyright (C) 1999-2002 Jens Finke" msgstr "Cóipcheart (C) 1999-2004 Jens Finke" #: src/main.c:146 msgid "A mind game about atoms and molecules." msgstr "" #: src/main.c:456 msgid "Congratulations! You have finished all Atomix levels." msgstr "" #: src/main.c:467 msgid "Couldn't find at least one level." msgstr "" #: src/main.c:472 msgid "Do you want to finish the game?" msgstr "" #: src/main.c:591 src/main.c:597 src/main.c:602 #, c-format msgid "Couldn't create directory: %s" msgstr "" #. create statistics frame #: src/main.c:701 msgid "Statistics" msgstr "" #: src/main.c:707 msgid "Level:" msgstr "" #: src/main.c:708 msgid "Molecule:" msgstr "" #: src/main.c:709 msgid "Score:" msgstr "Scór:" #: src/main.c:710 msgid "Time:" msgstr "Am:" #: src/main.c:750 #, c-format msgid "Couldn't find file: %s" msgstr "Teip ag cruthaigh comhad: %s" #: src/theme-manager.c:141 msgid "No themes found." msgstr "" #: src/theme-manager.c:205 #, c-format msgid "Found theme '%s' in: %s" msgstr "" #: atomix.desktop.in.h:2 msgid "Molecule mind game" msgstr "" atomix-2.14.0/po/gl.po0000644000175000017500000001311410360303773011402 00000000000000# translation of gl.po to Galego # Galician translation of Atomix game for GNOME. # Copyright (C) 2001-2002, 2005, 2006 Free Software Foundation, Inc. # Manuel A. Fernández Montecelo , 2001-2002. # Ignacio Casal Quinteiro , 2005, 2006. # msgid "" msgstr "" "Project-Id-Version: gl\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-01-08 22:45+0100\n" "PO-Revision-Date: 2006-01-08 22:45+0100\n" "Last-Translator: Ignacio Casal Quinteiro \n" "Language-Team: Galego\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.10.2\n" #: ../level/aceticacid.atomix.xml.h:1 msgid "Acetic Acid" msgstr "Ácido acético" #: ../level/acetone.atomix.xml.h:1 msgid "Acetone" msgstr "Acetona" #: ../level/butanol.atomix.xml.h:1 msgid "Butanol" msgstr "Butanol" #: ../level/cyclobutane.atomix.xml.h:1 msgid "Cyclobutane" msgstr "Ciclobutano" #: ../level/dimethylether.atomix.xml.h:1 msgid "Dimethyl Ether" msgstr "Dimetil-éter" #: ../level/ethanal.atomix.xml.h:1 msgid "Ethanal" msgstr "Etanal" #: ../level/ethane.atomix.xml.h:1 msgid "Ethane" msgstr "Etano" #: ../level/ethanol.atomix.xml.h:1 msgid "Ethanol" msgstr "Etanol" #: ../level/ethylene.atomix.xml.h:1 msgid "Ethylene" msgstr "Etileno" #: ../level/glycerin.atomix.xml.h:1 msgid "Glycerin" msgstr "Glicerina" #: ../level/lactic-acid.atomix.xml.h:1 msgid "Lactic Acid" msgstr "Ácido láctico" #: ../level/methanal.atomix.xml.h:1 msgid "Methanal" msgstr "Metanal" #: ../level/methane.atomix.xml.h:1 msgid "Methane" msgstr "Metano" #: ../level/methanol.atomix.xml.h:1 msgid "Methanol" msgstr "Metanol" #: ../level/propanal.atomix.xml.h:1 msgid "Propanal" msgstr "Propanal" #: ../level/propylene.atomix.xml.h:1 msgid "Propylene" msgstr "Propileno" #: ../level/pyran.atomix.xml.h:1 msgid "Pyran" msgstr "Pirano" #: ../level/transbutylen.atomix.xml.h:1 msgid "Trans Butylen" msgstr "Transbutileno" #: ../level/water.atomix.xml.h:1 msgid "Water" msgstr "Auga" #: ../src/atomix-ui.xml.h:1 msgid "Continue paused game" msgstr "Continuar xogo pausado" #: ../src/atomix-ui.xml.h:2 msgid "End a game" msgstr "Rematar un xogo" #: ../src/atomix-ui.xml.h:3 msgid "Pause the running game" msgstr "Pausar o xogo" #: ../src/atomix-ui.xml.h:4 msgid "Reset level" msgstr "Reiniciar nivel" #: ../src/atomix-ui.xml.h:5 msgid "Restores start situation" msgstr "Restaurar situación inicial" #: ../src/atomix-ui.xml.h:6 msgid "Set preferences" msgstr "Establecer preferencias" #: ../src/atomix-ui.xml.h:7 msgid "Skip _level" msgstr "Saltar _nivel" #: ../src/atomix-ui.xml.h:8 msgid "Skip the current level" msgstr "Saltar nivel actual" #: ../src/atomix-ui.xml.h:9 msgid "Start a new game" msgstr "Comezar un novo xogo" #: ../src/atomix-ui.xml.h:10 msgid "Undo the last move" msgstr "Desfacer o ultimo movemento" #: ../src/atomix-ui.xml.h:11 msgid "View highscores" msgstr "Ver puntuacións máximas" #: ../src/atomix-ui.xml.h:12 msgid "_Continue game" msgstr "_Continuar xogo" #: ../src/atomix-ui.xml.h:13 msgid "_End Game" msgstr "_Rematar Xogo" #: ../src/atomix-ui.xml.h:14 msgid "_Game" msgstr "_Xogo" #. submenu name="Edit" _label="_Edit"> #. #. #. #. " #: ../src/main.c:488 ../atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: ../src/main.c:499 msgid "Congratulations! You have finished all Atomix levels." msgstr "¡Noraboa! Acabaches todos os niveis de Atomix." #: ../src/main.c:509 msgid "Couldn't find at least one level." msgstr "Non se puido atopar nin sequera un nivel." #: ../src/main.c:514 msgid "Do you want to finish the game?" msgstr "¿Queres rematar o xogo?" #. create statistics frame #: ../src/main.c:728 msgid "Statistics" msgstr "Estatísticas" #: ../src/main.c:734 msgid "Level:" msgstr "Nivel:" #: ../src/main.c:735 msgid "Molecule:" msgstr "Molécula:" #: ../src/main.c:736 msgid "Formula:" msgstr "Fórmula:" #: ../src/main.c:737 msgid "Score:" msgstr "Puntuación:" #: ../src/main.c:738 msgid "Time:" msgstr "Tempo:" #: ../src/main.c:778 #, c-format msgid "Couldn't find file: %s" msgstr "Non se puido atopar o ficheiro: %s" #: ../src/theme-manager.c:135 msgid "No themes found." msgstr "Non se atoparon temas." #: ../src/theme-manager.c:193 #, c-format msgid "Found theme '%s' in: %s" msgstr "Atopado tema '%s' en: %s" #: ../atomix.desktop.in.h:2 msgid "Molecule puzzle game" msgstr "Crebacabezas con moléculas" atomix-2.14.0/po/gu.po0000644000175000017500000001605410357417364011431 00000000000000# translation of atomix.HEAD.gu.po to Gujarati # translation of atomix.HEAD.po to Gujarati # This file is distributed under the same license as the PACKAGE package. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER. # Ankit Patel , 2004. # Ankit Patel , 2005, 2006. # msgid "" msgstr "" "Project-Id-Version: atomix.HEAD.gu\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-01-06 05:23+0100\n" "PO-Revision-Date: 2006-01-06 13:01+0530\n" "Last-Translator: Ankit Patel \n" "Language-Team: Gujarati \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.9.1\n" "Plural-Forms: nplurals=2; plural=(n!=1);\n\n" "\n" "\n" #: ../level/aceticacid.atomix.xml.h:1 msgid "Acetic Acid" msgstr "એસેટિક એસિડ" #: ../level/acetone.atomix.xml.h:1 msgid "Acetone" msgstr "એસિટોન" #: ../level/butanol.atomix.xml.h:1 msgid "Butanol" msgstr "બ્યુટેનોલ" #: ../level/cyclobutane.atomix.xml.h:1 msgid "Cyclobutane" msgstr "સાયક્લોબ્યુટેન" #: ../level/dimethylether.atomix.xml.h:1 msgid "Dimethyl Ether" msgstr "ડાયમિથાઈલ ઈથર" #: ../level/ethanal.atomix.xml.h:1 msgid "Ethanal" msgstr "ઈથેનાલ" #: ../level/ethane.atomix.xml.h:1 msgid "Ethane" msgstr "ઈથેન" #: ../level/ethanol.atomix.xml.h:1 msgid "Ethanol" msgstr "ઈથેનોલ" #: ../level/ethylene.atomix.xml.h:1 msgid "Ethylene" msgstr "ઈથીલીન" #: ../level/glycerin.atomix.xml.h:1 msgid "Glycerin" msgstr "ગ્લાયસીરીન" #: ../level/lactic-acid.atomix.xml.h:1 msgid "Lactic Acid" msgstr "લેક્ટિક એસિડ" #: ../level/methanal.atomix.xml.h:1 msgid "Methanal" msgstr "મિથેનાલ" #: ../level/methane.atomix.xml.h:1 msgid "Methane" msgstr "મિથેન" #: ../level/methanol.atomix.xml.h:1 msgid "Methanol" msgstr "મિથેનોલ" #: ../level/propanal.atomix.xml.h:1 msgid "Propanal" msgstr "પ્રોપેનાલ" #: ../level/propylene.atomix.xml.h:1 msgid "Propylene" msgstr "પ્રોપીલીન" #: ../level/pyran.atomix.xml.h:1 msgid "Pyran" msgstr "પાયરેન" #: ../level/transbutylen.atomix.xml.h:1 msgid "Trans Butylen" msgstr "ટ્રાન્સ બ્યુટીલીન" #: ../level/water.atomix.xml.h:1 msgid "Water" msgstr "પાણી" #: ../src/atomix-ui.xml.h:1 msgid "Continue paused game" msgstr "અટકાવાયેલ રમત ચાલુ રાખો" #: ../src/atomix-ui.xml.h:2 msgid "End a game" msgstr "રમતનો અંત કરો" #: ../src/atomix-ui.xml.h:3 msgid "Pause the running game" msgstr "ચાલતી રમત અટકાવો" #: ../src/atomix-ui.xml.h:4 msgid "Reset level" msgstr "સ્તર ફરીથી સુયોજિત કરો" #: ../src/atomix-ui.xml.h:5 msgid "Restores start situation" msgstr "શરુઆતની પરિસ્થિતિ ફરીથી સંગ્રહિત કરો" #: ../src/atomix-ui.xml.h:6 msgid "Set preferences" msgstr "પસંદગીઓ સુયોજિત કરો" #: ../src/atomix-ui.xml.h:7 msgid "Skip _level" msgstr "સ્તર અવગણો (_l)" #: ../src/atomix-ui.xml.h:8 msgid "Skip the current level" msgstr "વર્તમાન સ્તર અવગણો" #: ../src/atomix-ui.xml.h:9 msgid "Start a new game" msgstr "નવી રમત શરુ કરો" #: ../src/atomix-ui.xml.h:10 msgid "Undo the last move" msgstr "છેલ્લી ચાલ રદ કરો" #: ../src/atomix-ui.xml.h:11 msgid "View highscores" msgstr "મહત્તમ ગુણ જુઓ" #: ../src/atomix-ui.xml.h:12 msgid "_Continue game" msgstr "રમત ચાલુ રાખો (_C)" #: ../src/atomix-ui.xml.h:13 msgid "_End Game" msgstr "રમતનો અંત કરો (_E)" #: ../src/atomix-ui.xml.h:14 msgid "_Game" msgstr "રમત (_G)" #. submenu name="Edit" _label="_Edit"> #. #. #. #. " #: ../src/main.c:488 ../atomix.desktop.in.h:1 msgid "Atomix" msgstr "એટોમિક્સ" #: ../src/main.c:499 msgid "Congratulations! You have finished all Atomix levels." msgstr "અભિનંદન! તમે એટોમિક્સના બધા સ્તરો પૂર્ણ કરી દીધા છે." #: ../src/main.c:509 msgid "Couldn't find at least one level." msgstr "ઓછામાં ઓછું એક સ્તર પણ શોધી શક્યા નથી." #: ../src/main.c:514 msgid "Do you want to finish the game?" msgstr "શું તમે રમત પૂર્ણ કરવા માંગો છો?" #. create statistics frame #: ../src/main.c:728 msgid "Statistics" msgstr "પરિસ્થિતિઓ" #: ../src/main.c:734 msgid "Level:" msgstr "સ્તર:" #: ../src/main.c:735 msgid "Molecule:" msgstr "અણુ:" #: ../src/main.c:736 msgid "Formula:" msgstr "સૂત્ર:" #: ../src/main.c:737 msgid "Score:" msgstr "ગુણ:" #: ../src/main.c:738 msgid "Time:" msgstr "સમય:" #: ../src/main.c:778 #, c-format msgid "Couldn't find file: %s" msgstr "ફાઈલ શોધી શક્યા નહિં: %s" #: ../src/theme-manager.c:135 msgid "No themes found." msgstr "કોઈ થીમ મળી નથી." #: ../src/theme-manager.c:193 #, c-format msgid "Found theme '%s' in: %s" msgstr "મા થીમ '%s' મળી: %s" #: ../atomix.desktop.in.h:2 msgid "Molecule puzzle game" msgstr "પરમાણું કોયડા રમત" atomix-2.14.0/po/he.po0000644000175000017500000001100607763421517011404 00000000000000# translation of atomix.txt.po to Hebrew # This file is distributed under the same license as the PACKAGE package. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # Gil 'Dolfin' Osher , 2003 # msgid "" msgstr "" "Project-Id-Version: atomix.txt\n" "POT-Creation-Date: 2003-12-03 18:47+0100\n" "PO-Revision-Date: 2003-03-20 16:13+0200\n" "Last-Translator: Gil 'Dolfin' Osher \n" "Language-Team: Hebrew \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.0\n" #: src/atomix-ui.xml.in.h:1 msgid "Continue paused game" msgstr "המשך משחק מופסק" #: src/atomix-ui.xml.in.h:2 msgid "E_xit" msgstr "י_ציאה" #: src/atomix-ui.xml.in.h:3 msgid "End a game" msgstr "סיים את המשחק" #: src/atomix-ui.xml.in.h:4 msgid "Exit game" msgstr "צא מהמשחק" #: src/atomix-ui.xml.in.h:5 msgid "Pause the running game" msgstr "הפסק את המשחק הפועל" #: src/atomix-ui.xml.in.h:6 msgid "Reset level" msgstr "התחל מהתחלה שלב" #: src/atomix-ui.xml.in.h:7 msgid "Restores start situation" msgstr "משחזר את מצב ההתחלה" #: src/atomix-ui.xml.in.h:8 msgid "Set preferences" msgstr "קבע העדפות" #: src/atomix-ui.xml.in.h:9 msgid "Skip _level" msgstr "דלג _שלב" #: src/atomix-ui.xml.in.h:10 msgid "Skip the current level" msgstr "דלג על השלב הנוכחי" #: src/atomix-ui.xml.in.h:11 msgid "Start a new game" msgstr "התחל משחק חדש" #: src/atomix-ui.xml.in.h:12 msgid "Undo the last move" msgstr "בטל את המהלך האחרון" #: src/atomix-ui.xml.in.h:13 msgid "View game credits" msgstr "הצג תודות משחק" #: src/atomix-ui.xml.in.h:14 msgid "View highscores" msgstr "הצג תוצאות גבוהות" #: src/atomix-ui.xml.in.h:15 msgid "_About" msgstr "_אודות" #: src/atomix-ui.xml.in.h:16 msgid "_Continue game" msgstr "_המשך משחק" #: src/atomix-ui.xml.in.h:17 msgid "_Edit" msgstr "_עריכה" #: src/atomix-ui.xml.in.h:18 msgid "_End Game" msgstr "_סיים משחק" #: src/atomix-ui.xml.in.h:19 msgid "_Game" msgstr "_משחק" #: src/atomix-ui.xml.in.h:20 msgid "_Help" msgstr "_עזרה" #: src/atomix-ui.xml.in.h:21 msgid "_New Game" msgstr "_משחק חדש" #: src/atomix-ui.xml.in.h:22 msgid "_Pause game" msgstr "_הפסק משחק" #: src/atomix-ui.xml.in.h:23 msgid "_Preferences ..." msgstr "_העדפות...." #: src/atomix-ui.xml.in.h:24 msgid "_Scores ..." msgstr "_תוצאות..." #: src/atomix-ui.xml.in.h:25 msgid "_Undo move" msgstr "_בטל מהלך" #: src/level-manager.c:171 msgid "Couldn't find level sequence description." msgstr "לא ניתן למצוא תיאור רצף שלבים." #: src/level-manager.c:185 msgid "No level found." msgstr "לא נמצא שלב." #: src/level-manager.c:286 #, c-format msgid "Found level '%s' in: %s" msgstr "נמצא שלב '%s' ב %s" #: src/main.c:118 src/main.c:444 atomix.desktop.in.h:1 msgid "Atomix" msgstr "אטומיקס" #: src/main.c:145 msgid "Copyright (C) 1999-2002 Jens Finke" msgstr "זכויות יוצרים (C) 1999-2002 Jens Finke " #: src/main.c:146 msgid "A mind game about atoms and molecules." msgstr "משחק חשיבה על אטומים ומולקולות." #: src/main.c:456 msgid "Congratulations! You have finished all Atomix levels." msgstr "ברכות! סיימת את כל שלבי אטומיקס." #: src/main.c:467 msgid "Couldn't find at least one level." msgstr "לא ניתן למצוא לפחות שלב אחד." #: src/main.c:472 msgid "Do you want to finish the game?" msgstr "האם ברצונך לסיים את המשחק?" #: src/main.c:591 src/main.c:597 src/main.c:602 #, c-format msgid "Couldn't create directory: %s" msgstr "לא ניתן ליצור את הסיפרייה: %s" #. create statistics frame #: src/main.c:701 msgid "Statistics" msgstr "סטטיסטיקות" #: src/main.c:707 msgid "Level:" msgstr "שלב:" #: src/main.c:708 msgid "Molecule:" msgstr "מולקולה:" #: src/main.c:709 msgid "Score:" msgstr "תוצאה:" #: src/main.c:710 msgid "Time:" msgstr "זמן:" #: src/main.c:750 #, c-format msgid "Couldn't find file: %s" msgstr "לא ניתן למצוא את הקובץ: %s" #: src/theme-manager.c:141 msgid "No themes found." msgstr "לא נמצאו ערכות נושא." #: src/theme-manager.c:205 #, c-format msgid "Found theme '%s' in: %s" msgstr "נמצאה ערכת נושא '%s' ב: %s" #: atomix.desktop.in.h:2 msgid "Molecule mind game" msgstr "משחק חשיבה מולקולי" atomix-2.14.0/po/hi.po0000644000175000017500000001230210016377421011375 00000000000000# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR Free Software Foundation, Inc. # FIRST AUTHOR , YEAR. # msgid "" msgstr "" "Project-Id-Version: Atomix 2.x\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2004-02-23 19:05+0530\n" "PO-Revision-Date: 2003-01-03 18:26+0530\n" "Last-Translator: G Karunakar \n" "Language-Team: Gnome Hindi Team\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: src/atomix-ui.xml.in.h:1 msgid "Continue paused game" msgstr "रुका हुआ खेल जारी करें" #: src/atomix-ui.xml.in.h:2 msgid "E_xit" msgstr "बाहर (_x)" #: src/atomix-ui.xml.in.h:3 msgid "End a game" msgstr "खेल खत्म करें" #: src/atomix-ui.xml.in.h:4 msgid "Exit game" msgstr "खेल से बाहर" #: src/atomix-ui.xml.in.h:5 msgid "Pause the running game" msgstr "चल रहे खेल को रोकें" #: src/atomix-ui.xml.in.h:6 msgid "Reset level" msgstr "स्तर यथावत् करें" #: src/atomix-ui.xml.in.h:7 msgid "Restores start situation" msgstr "खेल को " #: src/atomix-ui.xml.in.h:8 msgid "Set preferences" msgstr "विकल्प समायोजित करें" #: src/atomix-ui.xml.in.h:9 msgid "Skip _level" msgstr "स्तर छोडें (_l)" #: src/atomix-ui.xml.in.h:10 msgid "Skip the current level" msgstr "वर्तमान स्तर छोडें" #: src/atomix-ui.xml.in.h:11 msgid "Start a new game" msgstr "नया खेल शुरु करें" #: src/atomix-ui.xml.in.h:12 msgid "Undo the last move" msgstr "पिछली चाल वापस लें" #: src/atomix-ui.xml.in.h:13 msgid "View game credits" msgstr "खेल श्रेय देखें" #: src/atomix-ui.xml.in.h:14 msgid "View highscores" msgstr "उच्चसकोर देखें" #: src/atomix-ui.xml.in.h:15 msgid "_About" msgstr "के बारे मे (_A)" #: src/atomix-ui.xml.in.h:16 msgid "_Continue game" msgstr "खेल जारी रखें (_C)" #: src/atomix-ui.xml.in.h:17 msgid "_Edit" msgstr "संशोधन (_E)" #: src/atomix-ui.xml.in.h:18 msgid "_End Game" msgstr "खेल समाप्त करें (_E)" #: src/atomix-ui.xml.in.h:19 msgid "_Game" msgstr "खेल (_G)" #: src/atomix-ui.xml.in.h:20 msgid "_Help" msgstr "सहायता (_H)" #: src/atomix-ui.xml.in.h:21 msgid "_New Game" msgstr "नया खेल (_N)" #: src/atomix-ui.xml.in.h:22 msgid "_Pause game" msgstr "खेल रोकें (_P)" #: src/atomix-ui.xml.in.h:23 msgid "_Preferences ..." msgstr "विकल्प ...(_P)" #: src/atomix-ui.xml.in.h:24 msgid "_Scores ..." msgstr "सकोर ...(_S)" #: src/atomix-ui.xml.in.h:25 msgid "_Undo move" msgstr "चाल वापिस लें (_U)" #: src/level-manager.c:171 msgid "Couldn't find level sequence description." msgstr "स्तर क्रम वर्णन नही मिला" #: src/level-manager.c:185 msgid "No level found." msgstr "खेल स्तर नही मिला" #: src/level-manager.c:286 #, c-format msgid "Found level '%s' in: %s" msgstr "स्तर '%s' में '%s' मिला" #: src/main.c:118 src/main.c:444 atomix.desktop.in.h:1 msgid "Atomix" msgstr "एटामिक्स" #: src/main.c:145 msgid "Copyright (C) 1999-2002 Jens Finke" msgstr "कापीराईट (c) १९९९-२००२ जेन्स् फिंके" #: src/main.c:146 msgid "A mind game about atoms and molecules." msgstr "एटम ओर मालिक्यूल के बारे में एक दिमागी खेल" #: src/main.c:456 msgid "Congratulations! You have finished all Atomix levels." msgstr "बधाई ! आपने एटामिक्स के सभी स्तर पार कर लिये" #: src/main.c:467 msgid "Couldn't find at least one level." msgstr "कमसेकम एक स्तर नही मिला" #: src/main.c:472 msgid "Do you want to finish the game?" msgstr "कया आप खेल समाप्त करना चाहेंगे ?" #: src/main.c:591 src/main.c:597 src/main.c:602 #, c-format msgid "Couldn't create directory: %s" msgstr "डायरेकट्री '%s' नही बना पाए" #. create statistics frame #: src/main.c:701 msgid "Statistics" msgstr "आंकडे" #: src/main.c:707 msgid "Level:" msgstr "स्तर:" #: src/main.c:708 msgid "Molecule:" msgstr "मालिक्यूल:" #: src/main.c:709 msgid "Score:" msgstr "सकोर:" #: src/main.c:710 msgid "Time:" msgstr "समय:" #: src/main.c:750 #, c-format msgid "Couldn't find file: %s" msgstr "फाइल '%s' नही मिला" #: src/theme-manager.c:141 msgid "No themes found." msgstr "कोइ थीम नही मिला" #: src/theme-manager.c:205 #, c-format msgid "Found theme '%s' in: %s" msgstr "थीम '%s' में '%s' मिला" #: atomix.desktop.in.h:2 msgid "Molecule mind game" msgstr "मालिक्यूल दिमागी खेल" #~ msgid "Atomix Splash" #~ msgstr "एटामिक्स स्पलेश" atomix-2.14.0/po/hu.po0000644000175000017500000001404110374671127011422 00000000000000# Hungarian translation of atomix. # Copyright (C) 2002-2004 Free Software Foundation, Inc. # This file is distributed under the same license as the atomix package. # Andras Timar , 2002. # Laszlo Dvornik , 2004. # Gabor Kelemen , 2004. # msgid "" msgstr "" "Project-Id-Version: atomix\n" "Report-Msgid-Bugs-To:\n" "POT-Creation-Date: 2005-10-25 04:33+0000\n" "PO-Revision-Date: 2004-04-12 16:42+0200\n" "Last-Translator: Gabor Kelemen \n" "Language-Team: Hungarian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.3.1\n" #: ../level/aceticacid.atomix.xml.h:1 msgid "Acetic Acid" msgstr "Ecetsav" #: ../level/acetone.atomix.xml.h:1 msgid "Acetone" msgstr "Aceton" #: ../level/buthanol.atomix.xml.h:1 msgid "Buthanol" msgstr "Bután" #: ../level/cyclo-buthane.atomix.xml.h:1 msgid "Cyclo-Buthane" msgstr "Ciklo-bután" #: ../level/dimethylether.atomix.xml.h:1 msgid "Dimethyl Ether" msgstr "Dimetil-éter" #: ../level/ethan.atomix.xml.h:1 msgid "Ethan" msgstr "Etán" #: ../level/ethanal.atomix.xml.h:1 msgid "Ethanal" msgstr "Acetaldehid" #: ../level/ethanol.atomix.xml.h:1 msgid "Ethanol" msgstr "Etanol" #: ../level/ethylene.atomix.xml.h:1 msgid "Ethylene" msgstr "Etilén" #: ../level/glycerin.atomix.xml.h:1 msgid "Glycerin" msgstr "Glicerin" #: ../level/lactic-acid.atomix.xml.h:1 msgid "Lactic Acid" msgstr "Tejsav" #: ../level/methanal.atomix.xml.h:1 msgid "Methanal" msgstr "Formaldehid" #: ../level/methane.atomix.xml.h:1 msgid "Methane" msgstr "Metán" #: ../level/methanol.atomix.xml.h:1 msgid "Methanol" msgstr "Metanol" #: ../level/propanal.atomix.xml.h:1 msgid "Propanal" msgstr "Propionaldehid" #: ../level/propylen.atomix.xml.h:1 msgid "Propylen" msgstr "Propilén" #: ../level/pyran.atomix.xml.h:1 msgid "Pyran" msgstr "Pirán" #: ../level/transbutylen.atomix.xml.h:1 msgid "Trans Butylen" msgstr "Transz-Butilén" #: ../level/water.atomix.xml.h:1 msgid "Water" msgstr "Víz" #: ../src/atomix-ui.xml.h:1 msgid "Continue paused game" msgstr "A játék folytatása" #: ../src/atomix-ui.xml.h:2 msgid "E_xit" msgstr "_Kilépés" #: ../src/atomix-ui.xml.h:3 msgid "End a game" msgstr "A játék befejezése" #: ../src/atomix-ui.xml.h:4 msgid "Exit game" msgstr "Kilépés a játékból" #: ../src/atomix-ui.xml.h:5 msgid "Pause the running game" msgstr "A játék félbeszakítása" #: ../src/atomix-ui.xml.h:6 msgid "Reset level" msgstr "Szint alaphelyzete" #: ../src/atomix-ui.xml.h:7 msgid "Restores start situation" msgstr "A kezdeti helyzet visszaállítása" #: ../src/atomix-ui.xml.h:8 msgid "Set preferences" msgstr "Beállítások" #: ../src/atomix-ui.xml.h:9 msgid "Skip _level" msgstr "Szint á_tugrása" #: ../src/atomix-ui.xml.h:10 msgid "Skip the current level" msgstr "A jelenlegi szint átugrása" #: ../src/atomix-ui.xml.h:11 msgid "Start a new game" msgstr "Új játék indítása" #: ../src/atomix-ui.xml.h:12 msgid "Undo the last move" msgstr "Az utolsó lépés visszavonása" #: ../src/atomix-ui.xml.h:13 msgid "View game credits" msgstr "A játék névjegye" #: ../src/atomix-ui.xml.h:14 msgid "View highscores" msgstr "Rekordok megtekintése" #: ../src/atomix-ui.xml.h:15 msgid "_About" msgstr "_Névjegy" #: ../src/atomix-ui.xml.h:16 msgid "_Continue game" msgstr "_Folytatás" #: ../src/atomix-ui.xml.h:17 msgid "_End Game" msgstr "_Vége" #: ../src/atomix-ui.xml.h:18 msgid "_Game" msgstr "_Játék" #. submenu name="Edit" _label="_Edit"> #. #. #. #: ../src/atomix-ui.xml.h:24 msgid "_Help" msgstr "_Súgó" #: ../src/atomix-ui.xml.h:25 msgid "_New Game" msgstr "Ú_j játék" #: ../src/atomix-ui.xml.h:26 msgid "_Pause game" msgstr "Játék _szüneteltetése" #: ../src/atomix-ui.xml.h:27 msgid "_Preferences ..." msgstr "_Beállítások..." #: ../src/atomix-ui.xml.h:28 msgid "_Scores ..." msgstr "_Pontszámok..." #: ../src/atomix-ui.xml.h:29 msgid "_Undo move" msgstr "_Lépés visszavonása" #: ../src/level-manager.c:173 msgid "Couldn't find level sequence description." msgstr "Nem található a szintsorozat leírása." #: ../src/level-manager.c:187 msgid "No level found." msgstr "Nincsenek szintek." #: ../src/level-manager.c:284 #, c-format msgid "Found level '%s' in: %s" msgstr "'%s' szint található ebben: %s" #: ../src/main.c:126 msgid "You have not achieved any scores yet. Play a little before coming back!" msgstr "Még nem ért el semmilyen eredményt. Játsszon egy kicsit tovább, mielőtt újra visszajön ide." #: ../src/main.c:169 msgid "translator_credits" msgstr "" "Dvornik László \n" "Kelemen Gábor \n" "Nyitrai István \n" "Tímár András " #: ../src/main.c:173 msgid "Copyright (C) 1999-2002 Jens Finke" msgstr "Copyright © 1999-2002 Jens Finke" #: ../src/main.c:174 msgid "A puzzle game about atoms and molecules." msgstr "Egy kirakós játék az atomokról és molekulákról" #: ../src/main.c:492 ../atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: ../src/main.c:503 msgid "Congratulations! You have finished all Atomix levels." msgstr "Gratulálunk! Túljutott az összes Atomix-szinten." #: ../src/main.c:513 msgid "Couldn't find at least one level." msgstr "Nincs egy szint sem." #: ../src/main.c:518 msgid "Do you want to finish the game?" msgstr "Befejezi a játékot?" #: ../src/main.c:727 msgid "Statistics" msgstr "Statisztika" #: ../src/main.c:733 msgid "Level:" msgstr "Szint:" #: ../src/main.c:734 msgid "Molecule:" msgstr "Molekula:" #: ../src/main.c:735 msgid "Score:" msgstr "Pont:" #: ../src/main.c:736 msgid "Time:" msgstr "Idő:" #: ../src/main.c:776 #, c-format msgid "Couldn't find file: %s" msgstr "A fájl nem található: %s" #: ../src/theme-manager.c:134 msgid "No themes found." msgstr "Nincs téma." #: ../src/theme-manager.c:193 #, c-format msgid "Found theme '%s' in: %s" msgstr "'%s' téma található ebben: %s" #: ../atomix.desktop.in.h:2 msgid "Molecule puzzle game" msgstr "Molekula kirakós játék" atomix-2.14.0/po/is.po0000644000175000017500000001036210050516305011406 00000000000000# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR , YEAR. # Victor Jónsson , 2004. msgid "" msgstr "" "Project-Id-Version: atomix\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2004-05-12 21:45+0000\n" "PO-Revision-Date: 2004-05-12 21:45-0000\n" "Last-Translator: Samuel Jon Gunnarsson \n" "Language-Team: Icelandic \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: src/atomix-ui.xml.in.h:1 msgid "Continue paused game" msgstr "Halda áfram leik í bið" #: src/atomix-ui.xml.in.h:2 msgid "E_xit" msgstr "_Hætta" #: src/atomix-ui.xml.in.h:3 msgid "End a game" msgstr "Enda leik" #: src/atomix-ui.xml.in.h:4 msgid "Exit game" msgstr "Hætta í leik" #: src/atomix-ui.xml.in.h:5 msgid "Pause the running game" msgstr "Setja leik í bið" #: src/atomix-ui.xml.in.h:6 msgid "Reset level" msgstr "Endurræsa leikborð" #: src/atomix-ui.xml.in.h:7 msgid "Restores start situation" msgstr "Lætur leikinn byrja aftur" #: src/atomix-ui.xml.in.h:8 msgid "Set preferences" msgstr "Forstillingar" #: src/atomix-ui.xml.in.h:9 msgid "Skip _level" msgstr "_Sleppa leikborði" #: src/atomix-ui.xml.in.h:10 msgid "Skip the current level" msgstr "Sleppa núverandi leikborði" #: src/atomix-ui.xml.in.h:11 msgid "Start a new game" msgstr "Byrja nýjan leik" #: src/atomix-ui.xml.in.h:12 msgid "Undo the last move" msgstr "Hætta við síðustu aðgerð" #: src/atomix-ui.xml.in.h:13 msgid "View game credits" msgstr "Skoða þakkarlista leiksins" #: src/atomix-ui.xml.in.h:14 msgid "View highscores" msgstr "Skoða hæstu stigin" #: src/atomix-ui.xml.in.h:15 msgid "_About" msgstr "_Um" #: src/atomix-ui.xml.in.h:16 msgid "_Continue game" msgstr "_Halda áfram" #: src/atomix-ui.xml.in.h:17 msgid "_Edit" msgstr "_Breyta" #: src/atomix-ui.xml.in.h:18 msgid "_End Game" msgstr "_Enda leik" #: src/atomix-ui.xml.in.h:19 msgid "_Game" msgstr "_Leikur" #: src/atomix-ui.xml.in.h:20 msgid "_Help" msgstr "_Hjálp" #: src/atomix-ui.xml.in.h:21 msgid "_New Game" msgstr "_Nýr leikur" #: src/atomix-ui.xml.in.h:22 msgid "_Pause game" msgstr "_Setja leik í bið" #: src/atomix-ui.xml.in.h:23 msgid "_Preferences ..." msgstr "_Forstillingar..." #: src/atomix-ui.xml.in.h:24 msgid "_Scores ..." msgstr "_Stig" #: src/atomix-ui.xml.in.h:25 msgid "_Undo move" msgstr "_Hætta við aðgerð" #: src/level-manager.c:171 msgid "Couldn't find level sequence description." msgstr "Gat ekki fundið lýsingu á leikborðsrunu" #: src/level-manager.c:185 msgid "No level found." msgstr "Ekkert leikborð fannst." #: src/level-manager.c:286 #, c-format msgid "Found level '%s' in: %s" msgstr "Fann borð '%s' í: %s" #: src/main.c:118 src/main.c:444 atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: src/main.c:145 msgid "Copyright (C) 1999-2002 Jens Finke" msgstr "Höfundarréttur (C) 1999-2002 Jens Finke" #: src/main.c:146 msgid "A mind game about atoms and molecules." msgstr "Hugarleikur um atóm og sameindir." #: src/main.c:456 msgid "Congratulations! You have finished all Atomix levels." msgstr "Til hamingju! Þú kláraðir öll Atomix leikborðin." #: src/main.c:467 msgid "Couldn't find at least one level." msgstr "Gat ekki fundið í það minnsta eitt leikborð." #: src/main.c:472 msgid "Do you want to finish the game?" msgstr "Viltu klára leikinn?" #: src/main.c:591 src/main.c:597 src/main.c:602 #, c-format msgid "Couldn't create directory: %s" msgstr "Mistókst að stofna möppu: %s" #. create statistics frame #: src/main.c:701 msgid "Statistics" msgstr "Tölfræði" #: src/main.c:707 msgid "Level:" msgstr "Leikborð:" #: src/main.c:708 msgid "Molecule:" msgstr "Sameind:" #: src/main.c:709 msgid "Score:" msgstr "Stig:" #: src/main.c:710 msgid "Time:" msgstr "Tími:" #: src/main.c:750 #, c-format msgid "Couldn't find file: %s" msgstr "Fann ekki skrá: %s" #: src/theme-manager.c:141 msgid "No themes found." msgstr "Engar þemur fundust." #: src/theme-manager.c:205 #, c-format msgid "Found theme '%s' in: %s" msgstr "Fann þemu '%s' í: %s" #: atomix.desktop.in.h:2 msgid "Molecule mind game" msgstr "Hugaleikur um sameindir " atomix-2.14.0/po/it.po0000644000175000017500000002561307763421517011435 00000000000000# translation of atomix.po to Italiano # Copyright (C) 2003 Free Software Foundation, Inc. # Paolo Sammicheli , 2003 # msgid "" msgstr "" "Project-Id-Version: atomix\n" "POT-Creation-Date: 2003-12-03 18:47+0100\n" "PO-Revision-Date: 2003-05-26 17:24+0200\n" "Last-Translator: Paolo Sammicheli \n" "Language-Team: Italiano \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-1\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.0.1\n" #: src/atomix-ui.xml.in.h:1 msgid "Continue paused game" msgstr "Riprendi il gioco" #: src/atomix-ui.xml.in.h:2 msgid "E_xit" msgstr "_Esci" #: src/atomix-ui.xml.in.h:3 msgid "End a game" msgstr "Termina la partita" #: src/atomix-ui.xml.in.h:4 msgid "Exit game" msgstr "Esci dal gioco" #: src/atomix-ui.xml.in.h:5 msgid "Pause the running game" msgstr "Metti in pausa il gioco in corso" #: src/atomix-ui.xml.in.h:6 msgid "Reset level" msgstr "Riavvia livello" #: src/atomix-ui.xml.in.h:7 msgid "Restores start situation" msgstr "Ripristina situazione iniziale" #: src/atomix-ui.xml.in.h:8 msgid "Set preferences" msgstr "Imposta le preferenze" #: src/atomix-ui.xml.in.h:9 msgid "Skip _level" msgstr "Salta _livello" #: src/atomix-ui.xml.in.h:10 msgid "Skip the current level" msgstr "Salta il livello attuale" #: src/atomix-ui.xml.in.h:11 msgid "Start a new game" msgstr "Inizia una nuova partita" #: src/atomix-ui.xml.in.h:12 msgid "Undo the last move" msgstr "Annulla l'ultima mossa" #: src/atomix-ui.xml.in.h:13 msgid "View game credits" msgstr "Visualizza crediti" #: src/atomix-ui.xml.in.h:14 msgid "View highscores" msgstr "Visualizza classifica" #: src/atomix-ui.xml.in.h:15 msgid "_About" msgstr "I_nformazioni" #: src/atomix-ui.xml.in.h:16 msgid "_Continue game" msgstr "_Continua gioco" #: src/atomix-ui.xml.in.h:17 msgid "_Edit" msgstr "_Modifica" #: src/atomix-ui.xml.in.h:18 msgid "_End Game" msgstr "_Termina gioco" #: src/atomix-ui.xml.in.h:19 msgid "_Game" msgstr "_Gioco" #: src/atomix-ui.xml.in.h:20 msgid "_Help" msgstr "A_iuto" #: src/atomix-ui.xml.in.h:21 msgid "_New Game" msgstr "_Nuova partita" #: src/atomix-ui.xml.in.h:22 msgid "_Pause game" msgstr "_Pausa" #: src/atomix-ui.xml.in.h:23 msgid "_Preferences ..." msgstr "Preferen_ze ..." #: src/atomix-ui.xml.in.h:24 msgid "_Scores ..." msgstr "_Punteggi ..." #: src/atomix-ui.xml.in.h:25 msgid "_Undo move" msgstr "_Annulla mossa" #: src/level-manager.c:171 msgid "Couldn't find level sequence description." msgstr "Impossibile trovare la descrizione della sequenza dei livelli." #: src/level-manager.c:185 msgid "No level found." msgstr "Nessun livello trovato." #: src/level-manager.c:286 #, c-format msgid "Found level '%s' in: %s" msgstr "Trovato livello %s in: %s" #: src/main.c:118 src/main.c:444 atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: src/main.c:145 msgid "Copyright (C) 1999-2002 Jens Finke" msgstr "Copyright (C) 1999-2002 Jens Finke" #: src/main.c:146 msgid "A mind game about atoms and molecules." msgstr "Un rompicapo con atomi e molecole." #: src/main.c:456 msgid "Congratulations! You have finished all Atomix levels." msgstr "Congratulazioni! Hai concluso con successo tutti i livelli di Atomix." #: src/main.c:467 msgid "Couldn't find at least one level." msgstr "Impossibile trovare almeno un livello." #: src/main.c:472 msgid "Do you want to finish the game?" msgstr "Vuoi veramente finire il gioco?" #: src/main.c:591 src/main.c:597 src/main.c:602 #, c-format msgid "Couldn't create directory: %s" msgstr "Impossibile creare la directory: %s" #. create statistics frame #: src/main.c:701 msgid "Statistics" msgstr "Statistiche" #: src/main.c:707 msgid "Level:" msgstr "Livello:" #: src/main.c:708 msgid "Molecule:" msgstr "Molecole:" #: src/main.c:709 msgid "Score:" msgstr "Punteggio:" #: src/main.c:710 msgid "Time:" msgstr "Tempo:" #: src/main.c:750 #, c-format msgid "Couldn't find file: %s" msgstr "Impossibile trovare il file: %s" #: src/theme-manager.c:141 msgid "No themes found." msgstr "Nessun tema trovato." #: src/theme-manager.c:205 #, c-format msgid "Found theme '%s' in: %s" msgstr "Trovato tema %s in: %s" #: atomix.desktop.in.h:2 msgid "Molecule mind game" msgstr "Rompicapo molecolare" #, fuzzy #~ msgid "Atomix Splash" #~ msgstr "Atomix" #~ msgid "No more undo levels." #~ msgstr "Non ci sono pi livelli da annullare." #~ msgid "This is the last level. You can't skip any further." #~ msgstr "Questo l'ultimo livello. Impossibile saltarne altri." #~ msgid "Name:" #~ msgstr "Nome_" #, fuzzy #~ msgid "XML file %s not found." #~ msgstr "Livello non trovato." #~ msgid "_New File" #~ msgstr "File _nuovo" #~ msgid "Grid" #~ msgstr "Griglia" #~ msgid "Grid On/Off" #~ msgstr "Griglia On/off" #~ msgid "Theme Window" #~ msgstr "Finestra tema" #~ msgid "_Clear Grid" #~ msgstr "_Pulisci griglia" #~ msgid "_Resize Grid" #~ msgstr "_Ridimensiona griglia" #~ msgid "_Delete Theme" #~ msgstr "_Cancella Tema" #~ msgid "Atomixed manual" #~ msgstr "Atomixed manuale" #~ msgid "_Level" #~ msgstr "_Livello" #~ msgid "_Theme" #~ msgstr "_Tema" #~ msgid "New" #~ msgstr "Nuovo" #~ msgid "New File" #~ msgstr "Nuovo file" #~ msgid "Open" #~ msgstr "Apri" #~ msgid "Open File" #~ msgstr "Apri file" #~ msgid "Save" #~ msgstr "Salva" #~ msgid "Save File" #~ msgstr "Salva file" #~ msgid "Theme Wnd" #~ msgstr "Fin Tema" #~ msgid "No." #~ msgstr "No." #~ msgid "Level" #~ msgstr "Livello" #~ msgid "Goal" #~ msgstr "Rete" #~ msgid "Themename:" #~ msgstr "NomeTema:" #~ msgid "Filename:" #~ msgstr "Nomefile:" #~ msgid "Bonuslevel" #~ msgstr "Livello bonus" #~ msgid "Time" #~ msgstr "Tempo" #~ msgid "Minutes: " #~ msgstr "Minuti: " #~ msgid "Seconds:" #~ msgstr "Secondi:" #~ msgid "Properties" #~ msgstr "Propriet" #~ msgid "Leveleditor" #~ msgstr "Editor livelli" #~ msgid "Images" #~ msgstr "Immagini" #~ msgid "Connections" #~ msgstr "Connessioni" #~ msgid "Moveables" #~ msgstr "Movibilit" #~ msgid "Obstacles" #~ msgstr "Ostacoli" #~ msgid "Directoryname:" #~ msgstr "Nome directory:" #~ msgid "Background Color:" #~ msgstr "Colore sfondo:" #~ msgid "Selector Image:" #~ msgstr "Selettore immagine:" #~ msgid "Browse ..." #~ msgstr "Naviga ..." #~ msgid "Animation Step:" #~ msgstr "Passo animazione:" #~ msgid "Tile Height:" #~ msgstr "Altezza tassello:" #~ msgid "Tile Width:" #~ msgstr "Larghezza tassello:" #~ msgid "Themeeditor" #~ msgstr "Editor tema" #~ msgid "Atom Preview" #~ msgstr "Anteprima Atom" #~ msgid "Mouse functions" #~ msgstr "Funzioni Mouse" #~ msgid "Clear" #~ msgstr "Pulisci" #~ msgid "Set" #~ msgstr "Setta" #~ msgid "Move" #~ msgstr "Sposta" #~ msgid "Resize Grid" #~ msgstr "Ridimensiona Griglia" #~ msgid "Current Values" #~ msgstr "Valori correnti" #~ msgid "Rows:" #~ msgstr "Righe" #~ msgid "Columns:" #~ msgstr "Colonne:" #~ msgid "New Values" #~ msgstr "Valori nuovi" #~ msgid "New Level" #~ msgstr "Nuovo livello" #~ msgid "Levelname:" #~ msgstr "Nome livello:" #~ msgid "Playfield Size" #~ msgstr "Grandezza campo gioco" #~ msgid "Goal Size" #~ msgstr "Grandezza porta" #, fuzzy #~ msgid "(C) 1999-2001 Jens Finke" #~ msgstr "(C) 1999 Jens Finke" #, fuzzy #~ msgid "Atomixed is the Level-/Themeeditor for the mind game Atomix." #~ msgstr "atomixed is the Level-/Themeeditor for the mind game atomix." #~ msgid "Change level name" #~ msgstr "Cambia nome livello" #~ msgid "" #~ "There is already a level with the same name. Please choose another\n" #~ "name for this level." #~ msgstr "" #~ "C' gi un livello con lo stesso nome. Scegliere un altro nome\n" #~ "per questo livello" #~ msgid "Current Name:" #~ msgstr "Nome attuale:" #~ msgid "Add Image" #~ msgstr "Aggiungi immagine" #~ msgid "Text:" #~ msgstr "Testo:" #~ msgid "Change ID" #~ msgstr "Cambia ID" #~ msgid "Current ID:" #~ msgstr "ID attuale:" #~ msgid "New ID:" #~ msgstr "Nuovo ID:" #~ msgid "New Theme" #~ msgstr "Nuovo tema" #~ msgid "Do you really want to clear the grid?" #~ msgstr "Si vuole veramente pulire la griglia?" #~ msgid "" #~ "There does already a theme with this name exist.\n" #~ "So does the dir name." #~ msgstr "" #~ "Esiste gi un tema \n" #~ "con questo nome." #~ msgid "" #~ "There does already a theme with\n" #~ "this name exist." #~ msgstr "" #~ "Esiste gi un tema con \n" #~ "questo nome." #~ msgid "" #~ "There does already a directory\n" #~ "with this name exist." #~ msgstr "" #~ "Esiste gi una directory\n" #~ "con questo nome." #~ msgid "Undo last move. This costs you 5% of your score." #~ msgstr "Annulla l'ultima mossa, questo coster il 5% del tuo punteggio." #~ msgid "Atomix manual" #~ msgstr "Manuale Atomix" #~ msgid "" #~ "Level not found.\n" #~ "Sorry, but the game ends here.\n" #~ "\n" #~ "(Please make sure you have *.atomix\n" #~ "files either in /share/atomix/levels\n" #~ "or ~/.atomix/levels.)" #~ msgstr "" #~ "Livello non trovato.\n" #~ "Spiacente, ma il gioco finisce qui.\n" #~ "\n" #~ "(Attenzione, assicurarsi di avere i file\n" #~ "*.atomix in /share/atomix/levels\n" #~ "o in ~/.atomix/levels.)" #~ msgid "Information" #~ msgstr "Informationi" #~ msgid "Atomix Next Level" #~ msgstr "Atomix prossimo livello" #~ msgid "Congratulations! You have successfully finished this level." #~ msgstr "Congratulazioni! Hai concluso con successo questo livello." #~ msgid "Remaining Time:" #~ msgstr "Tempo rimanente:" #~ msgid "Are you ready for the next level?" #~ msgstr "Sei pronto per il prossimo livello?" #~ msgid "Atomix End" #~ msgstr "Fine Atomix" #~ msgid "Do you want to play again?" #~ msgstr "Vuoi giocare ancora?" #~ msgid "Constraints" #~ msgstr "Contrasti" #~ msgid "enable score and time limit" #~ msgstr "abilita limiti di tempo e di punti" #~ msgid "General" #~ msgstr "Generale" #~ msgid "Keyboard (return and cursor keys)" #~ msgstr "Tastiera (Invio e tasti cursore)" #~ msgid "Mouse" #~ msgstr "Mouse" #~ msgid "Mouse Properties" #~ msgstr "Propriet mouse" #~ msgid "hide mouse cursor during dragging" #~ msgstr "nascondi il cursore durante il trascinamento" #~ msgid "enable lazy dragging" #~ msgstr "enable lazy dragging" #~ msgid "Sensitivity:" #~ msgstr "Sensitivit" #~ msgid "high" #~ msgstr "alta" #~ msgid "low" #~ msgstr "bassa" #~ msgid "Control" #~ msgstr "Controllo" #~ msgid "Do you really want to exit the program?" #~ msgstr "Si vuole veramente uscire dal programma?" #~ msgid "" #~ "Your time is up! This costs you 10% of your score. \n" #~ "More luck next time. \n" #~ "\n" #~ "Do you want to retry?" #~ msgstr "" #~ "Il tuo tempo alto! Qeusto costa il 10% del tuo punteggio.\n" #~ "Sarai pi fortunato la prossima volta\n" #~ "\n" #~ "Vuoi riprovare?" #~ msgid "" #~ "Sorry your time is up! But this was only\n" #~ "a bonus level so go further now." #~ msgstr "" #~ "Spiacente il tuo tempo era alto! ma questo era solo\n" #~ "un livello bonus, vai pure avanti" #~ msgid "Couldn't find the Atomix manual!" #~ msgstr "Impossibile trovare il manuale di Atomix!" #~ msgid "(C) Jens Finke 1999-2000" #~ msgstr "(C) Jens Finke 1999-2000" atomix-2.14.0/po/ja.po0000644000175000017500000001375710360146674011414 00000000000000# atomix ja.po. # Copyright (C) 2001,2002,2005,2006 Free Software Foundation, Inc. # Takeshi Aihana , 2001,2002,2005,2006. # msgid "" msgstr "" "Project-Id-Version: atomix HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-01-08 17:31+0900\n" "PO-Revision-Date: 2006-01-08 17:30+0900\n" "Last-Translator: Takeshi Aihana \n" "Language-Team: Japanese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../level/aceticacid.atomix.xml.h:1 msgid "Acetic Acid" msgstr "酢酸" #: ../level/acetone.atomix.xml.h:1 msgid "Acetone" msgstr "アセトン" #: ../level/butanol.atomix.xml.h:1 msgid "Butanol" msgstr "ブタノール" #: ../level/cyclobutane.atomix.xml.h:1 msgid "Cyclobutane" msgstr "シクロブタン" #: ../level/dimethylether.atomix.xml.h:1 msgid "Dimethyl Ether" msgstr "ジメチルエーテル" #: ../level/ethanal.atomix.xml.h:1 msgid "Ethanal" msgstr "エタナール" #: ../level/ethane.atomix.xml.h:1 msgid "Ethane" msgstr "エタン" #: ../level/ethanol.atomix.xml.h:1 msgid "Ethanol" msgstr "エチルアルコール" #: ../level/ethylene.atomix.xml.h:1 msgid "Ethylene" msgstr "エチレン" #: ../level/glycerin.atomix.xml.h:1 msgid "Glycerin" msgstr "グリセリン" #: ../level/lactic-acid.atomix.xml.h:1 msgid "Lactic Acid" msgstr "乳酸" #: ../level/methanal.atomix.xml.h:1 msgid "Methanal" msgstr "メタナール" #: ../level/methane.atomix.xml.h:1 msgid "Methane" msgstr "メタン" #: ../level/methanol.atomix.xml.h:1 msgid "Methanol" msgstr "メタノール" #: ../level/propanal.atomix.xml.h:1 msgid "Propanal" msgstr "プロパナール" #: ../level/propylene.atomix.xml.h:1 msgid "Propylene" msgstr "プロピレン" #: ../level/pyran.atomix.xml.h:1 msgid "Pyran" msgstr "ピラン" #: ../level/transbutylen.atomix.xml.h:1 msgid "Trans Butylen" msgstr "ブチレン" #: ../level/water.atomix.xml.h:1 msgid "Water" msgstr "水" #: ../src/atomix-ui.xml.h:1 msgid "Continue paused game" msgstr "一時停止していたゲームを再開します" #: ../src/atomix-ui.xml.h:2 msgid "End a game" msgstr "ゲームを終了します" #: ../src/atomix-ui.xml.h:3 msgid "Pause the running game" msgstr "現在プレイ中のゲームを一時停止します" #: ../src/atomix-ui.xml.h:4 msgid "Reset level" msgstr "レベルのクリア" #: ../src/atomix-ui.xml.h:5 msgid "Restores start situation" msgstr "開始時の状態に戻します" #: ../src/atomix-ui.xml.h:6 msgid "Set preferences" msgstr "設定のセット" #: ../src/atomix-ui.xml.h:7 msgid "Skip _level" msgstr "レベルのスキップ(_L)" #: ../src/atomix-ui.xml.h:8 msgid "Skip the current level" msgstr "現在のレベルをスキップします" #: ../src/atomix-ui.xml.h:9 msgid "Start a new game" msgstr "新しいゲームを開始します" #: ../src/atomix-ui.xml.h:10 msgid "Undo the last move" msgstr "最後の一手に戻します" #: ../src/atomix-ui.xml.h:11 msgid "View highscores" msgstr "最高得点を表示します" #: ../src/atomix-ui.xml.h:12 msgid "_Continue game" msgstr "ゲームの再開(_C)" #: ../src/atomix-ui.xml.h:13 msgid "_End Game" msgstr "終了(_E)" #: ../src/atomix-ui.xml.h:14 msgid "_Game" msgstr "ゲーム(_G)" #. submenu name="Edit" _label="_Edit"> #. #. #. #. \n" "日本GNOMEユーザー会 http://www.gnome.gr.jp" #: ../src/main.c:488 ../atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: ../src/main.c:499 msgid "Congratulations! You have finished all Atomix levels." msgstr "おめでとうございます! Atomix の全てのレベルをクリアしました。" #: ../src/main.c:509 msgid "Couldn't find at least one level." msgstr "一つもレベルが見つかりませんでした。" #: ../src/main.c:514 msgid "Do you want to finish the game?" msgstr "本当にこのゲームを終了しても宜しいですか?" #. create statistics frame #: ../src/main.c:728 msgid "Statistics" msgstr "ゲームの成績" #: ../src/main.c:734 msgid "Level:" msgstr "レベル:" #: ../src/main.c:735 msgid "Molecule:" msgstr "分子:" #: ../src/main.c:736 msgid "Formula:" msgstr "化学式:" #: ../src/main.c:737 msgid "Score:" msgstr "得点:" #: ../src/main.c:738 msgid "Time:" msgstr "タイム:" #: ../src/main.c:778 #, c-format msgid "Couldn't find file: %s" msgstr "ファイルが見つかりませんでした: %s" #: ../src/theme-manager.c:135 msgid "No themes found." msgstr "テーマが見つかりませんでした。" #: ../src/theme-manager.c:193 #, c-format msgid "Found theme '%s' in: %s" msgstr "テーマ '%s' が %s の中にありました" #: ../atomix.desktop.in.h:2 msgid "Molecule puzzle game" msgstr "分子構造のパズル・ゲームです" atomix-2.14.0/po/kn.po0000644000175000017500000001277207763421517011433 00000000000000# Kannada translation of Atomix. # Copyright (C) 2002 atomix' copyright holder. # This file is distributed under the same license as the atomix package. # Pramod , 2002. # msgid "" msgstr "" "Project-Id-Version: atomix-2.1\n" "POT-Creation-Date: 2003-12-03 18:47+0100\n" "PO-Revision-Date: 2002-12-17 11:56+0530\n" "Last-Translator: Pramod \n" "Language-Team: Kannada \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" #: src/atomix-ui.xml.in.h:1 msgid "Continue paused game" msgstr "ವಿರಾಮಿಸಿದ ಆಟವನ್ನು ಮುಂದುವರಿಸು" #: src/atomix-ui.xml.in.h:2 msgid "E_xit" msgstr "ನಿರ್ಗಮಿಸು" #: src/atomix-ui.xml.in.h:3 msgid "End a game" msgstr "ಆಟ ಮುಗಿಸು" #: src/atomix-ui.xml.in.h:4 msgid "Exit game" msgstr "ಆಟದಿಂದ ನಿರ್ಗಮಿಸು" #: src/atomix-ui.xml.in.h:5 msgid "Pause the running game" msgstr "ಚಾಲ್ತಿಯಲ್ಲಿರುವ ಆಟವನ್ನು ವಿರಾಮಿಸು" #: src/atomix-ui.xml.in.h:6 msgid "Reset level" msgstr "ಹಂತಗಳನ್ನು ಮರೆತುಬಿಡು " #: src/atomix-ui.xml.in.h:7 msgid "Restores start situation" msgstr "ಮೊದಲಿನ ಸ್ಥಿತಿಗೆ ತರು" #: src/atomix-ui.xml.in.h:8 msgid "Set preferences" msgstr "ಇಚ್ಚೆಯನ್ನು ತಿಳಿಸಿ" #: src/atomix-ui.xml.in.h:9 msgid "Skip _level" msgstr "ಹಂತವನ್ನು ಎಗರಿಸು" #: src/atomix-ui.xml.in.h:10 msgid "Skip the current level" msgstr "ಚಾಲ್ತಿಯಲ್ಲಿರುವ ಹಂತವನ್ನು ಎಗರಿಸು" #: src/atomix-ui.xml.in.h:11 msgid "Start a new game" msgstr "ಹೊಸ ಆಟವನ್ನು ಶುರುಮಾಡು" #: src/atomix-ui.xml.in.h:12 msgid "Undo the last move" msgstr "ಹಿಂದಿನ ಚಲನೆಯನ್ನು ರದ್ದ" #: src/atomix-ui.xml.in.h:13 msgid "View game credits" msgstr "ಆಟದ ನೆರವು ಪಟ್ಟಿಯನ್ನು ವೀಕ್ಷಿಸು" #: src/atomix-ui.xml.in.h:14 msgid "View highscores" msgstr "ಹೆಚ್ಚಿನ ಅಂಕಗಳನ್ನು ವೀಕ್ಷಿಸು" #: src/atomix-ui.xml.in.h:15 msgid "_About" msgstr "ತಂತ್ರಾಂಶದ ಬಗ್ಗೆ" #: src/atomix-ui.xml.in.h:16 msgid "_Continue game" msgstr "ಆಟ ಮುಂದುವರಿಸು" #: src/atomix-ui.xml.in.h:17 msgid "_Edit" msgstr "ಸಂಸ್ಕರಿಸು" #: src/atomix-ui.xml.in.h:18 msgid "_End Game" msgstr "ಆಟ ಮುಗಿಸು" #: src/atomix-ui.xml.in.h:19 msgid "_Game" msgstr "ಆಟ" #: src/atomix-ui.xml.in.h:20 msgid "_Help" msgstr "ಸಹಾಯ" #: src/atomix-ui.xml.in.h:21 msgid "_New Game" msgstr "ಹೊಸ ಆಟ" #: src/atomix-ui.xml.in.h:22 msgid "_Pause game" msgstr "ಆಟ ವಿರಾಮಿಸು" #: src/atomix-ui.xml.in.h:23 msgid "_Preferences ..." msgstr "ಇಚ್ಛೆಗಳು..." #: src/atomix-ui.xml.in.h:24 msgid "_Scores ..." msgstr "ಅಂಕಗಳು..." #: src/atomix-ui.xml.in.h:25 msgid "_Undo move" msgstr " ಜರಗಿಸಿದ್ದನು ಕಳಚು" #: src/level-manager.c:171 msgid "Couldn't find level sequence description." msgstr "ಹಂತದ ಸರಣಿಗಳ ವರ್ಣನೆಗಳು ಸಿಗಲಿಲ್ಲ." #: src/level-manager.c:185 msgid "No level found." msgstr "ಯಾವ ಹಂತವು ಸಿಗಳಿಲ್ಲ." #: src/level-manager.c:286 #, c-format msgid "Found level '%s' in: %s" msgstr "'%s' ಹಂತ ಸಿಕ್ಕಿರುವ ಮಾರ್ಗ: %s" #: src/main.c:118 src/main.c:444 atomix.desktop.in.h:1 msgid "Atomix" msgstr "ಅಟೂಮಿಕ್ಸ್" #: src/main.c:145 msgid "Copyright (C) 1999-2002 Jens Finke" msgstr "ಗ್ರಂಥಾಸ್ವಾಮ್ಯ (C) 1999-2002 ಜೆನ್ಸ್ ಫಿನ್ನ್ಕೆ" #: src/main.c:146 msgid "A mind game about atoms and molecules." msgstr "ಅಣುಗಳು ಮತ್ತು ಪರಮಾಣುಗಳ ಬಗ್ಗಿನ ಚಿಂತನಾಪೂರ್ವಕ ಅಟ." #: src/main.c:456 msgid "Congratulations! You have finished all Atomix levels." msgstr "ಅಭಿನಂದನೆಗಳು! ನೀವು ಎಲ್ಲಾ ಅಟೂಮಿಕ್ಸ್ ಹಂತಗಳನ್ನು ಮುಗಿಸಿದ್ದೀರಿ." #: src/main.c:467 msgid "Couldn't find at least one level." msgstr "ಒಂದು ಹಂತವಾದರು ಸಿಗಲಿಲ್ಲ." #: src/main.c:472 msgid "Do you want to finish the game?" msgstr "ನೀವು ಅಟ ಮುಗಿಸಲು ಇಚ್ಚಿಸುತ್ತೀರೆ?" #: src/main.c:591 src/main.c:597 src/main.c:602 #, c-format msgid "Couldn't create directory: %s" msgstr "ಸೂಚಿಯನ್ನು ತಯಾರಿಸಲು ಅಗಳಿಲ್ಲ: %s" #. create statistics frame #: src/main.c:701 msgid "Statistics" msgstr "ಅಂಕಿಗಳು" #: src/main.c:707 msgid "Level:" msgstr "ಹಂತ:" #: src/main.c:708 msgid "Molecule:" msgstr "ಅಣು:" #: src/main.c:709 msgid "Score:" msgstr "ಅಂಕ:" #: src/main.c:710 msgid "Time:" msgstr "ಸಮಯ:" #: src/main.c:750 #, c-format msgid "Couldn't find file: %s" msgstr "ಕಡತ ಸಿಗಳಿಲ್ಲ: %s" #: src/theme-manager.c:141 msgid "No themes found." msgstr "ಯಾವ ಅಲಂಕಾರಗಳು ಸಿಗಳಿಲ್ಲ." #: src/theme-manager.c:205 #, c-format msgid "Found theme '%s' in: %s" msgstr "'%s' ಅಲಂಕಾರ ಸಿಕ್ಕಿರುವ ಮಾರ್ಗ: %s" #: atomix.desktop.in.h:2 msgid "Molecule mind game" msgstr "ಅಣುವಿನ ಚಿಂತನೆಯ ಅಟ" atomix-2.14.0/po/ko.po0000644000175000017500000001052207763421545011424 00000000000000# Korean Translation for Atomix 0.9.4 # Copyright (C) YEAR Free Software Foundation, Inc. # Young Chol Song , 2003. # msgid "" msgstr "" "Project-Id-Version: Atomix 0.9.4\n" "POT-Creation-Date: 2003-12-03 18:47+0100\n" "PO-Revision-Date: 2003-05-20 23:01+0900\n" "Last-Translator: Young Chol Song \n" "Language-Team: Korean \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: src/atomix-ui.xml.in.h:1 msgid "Continue paused game" msgstr "일시 중지된 게임 계속하기" #: src/atomix-ui.xml.in.h:2 msgid "E_xit" msgstr "나가기(_x)" #: src/atomix-ui.xml.in.h:3 msgid "End a game" msgstr "게임 마치기" #: src/atomix-ui.xml.in.h:4 msgid "Exit game" msgstr "게임에서 나가기" #: src/atomix-ui.xml.in.h:5 msgid "Pause the running game" msgstr "실행중인 게임 일시 중지" #: src/atomix-ui.xml.in.h:6 msgid "Reset level" msgstr "현 단계 다시하기" #: src/atomix-ui.xml.in.h:7 msgid "Restores start situation" msgstr "초기 상황 복원" #: src/atomix-ui.xml.in.h:8 msgid "Set preferences" msgstr "설정하기" #: src/atomix-ui.xml.in.h:9 msgid "Skip _level" msgstr "다음 단계(_l)" #: src/atomix-ui.xml.in.h:10 msgid "Skip the current level" msgstr "현재 단계 건너뛰기" #: src/atomix-ui.xml.in.h:11 msgid "Start a new game" msgstr "새 게임 시작하기" #: src/atomix-ui.xml.in.h:12 msgid "Undo the last move" msgstr "지나간 움직임 되돌리기" #: src/atomix-ui.xml.in.h:13 msgid "View game credits" msgstr "게임 크레딧 보기" #: src/atomix-ui.xml.in.h:14 msgid "View highscores" msgstr "최고 점수 보기" #: src/atomix-ui.xml.in.h:15 msgid "_About" msgstr "정보(_A)" #: src/atomix-ui.xml.in.h:16 msgid "_Continue game" msgstr "게임 계속하기(_C)" #: src/atomix-ui.xml.in.h:17 msgid "_Edit" msgstr "편집(_E)" #: src/atomix-ui.xml.in.h:18 msgid "_End Game" msgstr "게임 끝내기(_E)" #: src/atomix-ui.xml.in.h:19 msgid "_Game" msgstr "게임(_G)" #: src/atomix-ui.xml.in.h:20 msgid "_Help" msgstr "도움말(_H)" #: src/atomix-ui.xml.in.h:21 msgid "_New Game" msgstr "새 게임(_N)" #: src/atomix-ui.xml.in.h:22 msgid "_Pause game" msgstr "잠시 멈춤(_P)" #: src/atomix-ui.xml.in.h:23 msgid "_Preferences ..." msgstr "설정(_P)..." #: src/atomix-ui.xml.in.h:24 msgid "_Scores ..." msgstr "점수(_S)..." #: src/atomix-ui.xml.in.h:25 msgid "_Undo move" msgstr "움직임 되돌리기(_U)" #: src/level-manager.c:171 msgid "Couldn't find level sequence description." msgstr "레벨 순서 설명을 찾을 수 없습니다." #: src/level-manager.c:185 msgid "No level found." msgstr "레벨을 찾지 못했습니다." #: src/level-manager.c:286 #, c-format msgid "Found level '%s' in: %s" msgstr "%s 에서 '%s' 레벨를 찾았습니다." #: src/main.c:118 src/main.c:444 atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: src/main.c:145 msgid "Copyright (C) 1999-2002 Jens Finke" msgstr "Copyright (C) 1999-2002 Jens Finke" #: src/main.c:146 msgid "A mind game about atoms and molecules." msgstr "원자와 분자가 나오는 마인드 게임" #: src/main.c:456 msgid "Congratulations! You have finished all Atomix levels." msgstr "축하합니다! Atomix의 모든 레벨을 마쳤습니다." #: src/main.c:467 msgid "Couldn't find at least one level." msgstr "레벨을 하나도 찾을 수 없었습니다." #: src/main.c:472 msgid "Do you want to finish the game?" msgstr "게임을 계속할까요?" #: src/main.c:591 src/main.c:597 src/main.c:602 #, c-format msgid "Couldn't create directory: %s" msgstr "디렉토리 %s 를 만들 수 없습니다." #. create statistics frame #: src/main.c:701 msgid "Statistics" msgstr "통계" #: src/main.c:707 msgid "Level:" msgstr "레벨:" #: src/main.c:708 msgid "Molecule:" msgstr "분자:" #: src/main.c:709 msgid "Score:" msgstr "점수:" #: src/main.c:710 msgid "Time:" msgstr "시간:" #: src/main.c:750 #, c-format msgid "Couldn't find file: %s" msgstr "파일 %s 를 찾을 수 없습니다." #: src/theme-manager.c:141 msgid "No themes found." msgstr "테마를 찾을 수 없습니다." #: src/theme-manager.c:205 #, c-format msgid "Found theme '%s' in: %s" msgstr "%s 에서 테마 '%s'를 찾았습니다" #: atomix.desktop.in.h:2 msgid "Molecule mind game" msgstr "분자 마인드 게임" atomix-2.14.0/po/lt.po0000644000175000017500000001272610345354125011427 00000000000000# Lithuanian translation of atomix. # Copyright (C) 2005 Free Software Foundation # This file is distributed under the same license as the atomix package. # Žygimantas Beručka , 2005. # # msgid "" msgstr "" "Project-Id-Version: atomix HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2005-12-06 20:01+0200\n" "PO-Revision-Date: 2005-12-06 20:24+0200\n" "Last-Translator: Žygimantas Beručka \n" "Language-Team: Lithuanian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit" #: ../level/aceticacid.atomix.xml.h:1 msgid "Acetic Acid" msgstr "Acto rūgštis" #: ../level/acetone.atomix.xml.h:1 msgid "Acetone" msgstr "Acetonas" #: ../level/butanol.atomix.xml.h:1 msgid "Butanol" msgstr "Butanolis" #: ../level/cyclobutane.atomix.xml.h:1 msgid "Cyclobutane" msgstr "Ciklobutanas" #: ../level/dimethylether.atomix.xml.h:1 msgid "Dimethyl Ether" msgstr "Dimetil eteris" #: ../level/ethanal.atomix.xml.h:1 msgid "Ethanal" msgstr "Etanolis" #: ../level/ethane.atomix.xml.h:1 msgid "Ethane" msgstr "Etanas" #: ../level/ethanol.atomix.xml.h:1 msgid "Ethanol" msgstr "Etanolis" #: ../level/ethylene.atomix.xml.h:1 msgid "Ethylene" msgstr "Etilenas" #: ../level/glycerin.atomix.xml.h:1 msgid "Glycerin" msgstr "Glicerinas" #: ../level/lactic-acid.atomix.xml.h:1 msgid "Lactic Acid" msgstr "Pieno rūgštis" #: ../level/methanal.atomix.xml.h:1 msgid "Methanal" msgstr "Metanalis" #: ../level/methane.atomix.xml.h:1 msgid "Methane" msgstr "Metanas" #: ../level/methanol.atomix.xml.h:1 msgid "Methanol" msgstr "Metanolis" #: ../level/propanal.atomix.xml.h:1 msgid "Propanal" msgstr "Propanalis" #: ../level/propylene.atomix.xml.h:1 msgid "Propylene" msgstr "Propilenas" #: ../level/pyran.atomix.xml.h:1 msgid "Pyran" msgstr "Piranas" #: ../level/transbutylen.atomix.xml.h:1 msgid "Trans Butylen" msgstr "Trans butilenas" #: ../level/water.atomix.xml.h:1 msgid "Water" msgstr "Vanduo" #: ../src/atomix-ui.xml.h:1 msgid "Continue paused game" msgstr "Tęsti sustabdytą žaidimą" #: ../src/atomix-ui.xml.h:2 msgid "End a game" msgstr "Baigti žaidimą" #: ../src/atomix-ui.xml.h:3 msgid "Pause the running game" msgstr "Sustabdyti esamą žaidimą" #: ../src/atomix-ui.xml.h:4 msgid "Reset level" msgstr "Atkurti lygį" #: ../src/atomix-ui.xml.h:5 msgid "Restores start situation" msgstr "Atstato pradinę situaciją" #: ../src/atomix-ui.xml.h:6 msgid "Set preferences" msgstr "Keisti nustatymus" #: ../src/atomix-ui.xml.h:7 msgid "Skip _level" msgstr "Praleisti _lygį" #: ../src/atomix-ui.xml.h:8 msgid "Skip the current level" msgstr "Praleisti šį lygį" #: ../src/atomix-ui.xml.h:9 msgid "Start a new game" msgstr "Pradėti naują žaidimą" #: ../src/atomix-ui.xml.h:10 msgid "Undo the last move" msgstr "Atšaukti paskutinį veiksmą" #: ../src/atomix-ui.xml.h:11 msgid "View highscores" msgstr "Žiūrėti taškus" #: ../src/atomix-ui.xml.h:12 msgid "_Continue game" msgstr "_Tęsti žaidimą" #: ../src/atomix-ui.xml.h:13 msgid "_End Game" msgstr "_Baigti žaidimą" #: ../src/atomix-ui.xml.h:14 msgid "_Game" msgstr "Ž_aidimas" #. submenu name="Edit" _label="_Edit"> #. #. #. #. " #: ../src/main.c:488 ../atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: ../src/main.c:499 msgid "Congratulations! You have finished all Atomix levels." msgstr "Sveikiname! Jūs perėjote visus Atomix lygius." #: ../src/main.c:509 msgid "Couldn't find at least one level." msgstr "Nepavyko rasti bent vieno lygio." #: ../src/main.c:514 msgid "Do you want to finish the game?" msgstr "Ar tikrai nori užbaigti žaidimą?" #. create statistics frame #: ../src/main.c:723 msgid "Statistics" msgstr "Statistika" #: ../src/main.c:729 msgid "Level:" msgstr "Lygis:" #: ../src/main.c:730 msgid "Molecule:" msgstr "Molekulė:" #: ../src/main.c:731 msgid "Score:" msgstr "Taškai:" #: ../src/main.c:732 msgid "Time:" msgstr "Laikas:" #: ../src/main.c:772 #, c-format msgid "Couldn't find file: %s" msgstr "Nepavyko rasti bylos: %s" #: ../src/theme-manager.c:135 msgid "No themes found." msgstr "Temų nerasta." #: ../src/theme-manager.c:193 #, c-format msgid "Found theme '%s' in: %s" msgstr "Rasta tema „%s“ esanti: %s" #: ../atomix.desktop.in.h:2 msgid "Molecule puzzle game" msgstr "Molekulių galvosūkis" atomix-2.14.0/po/lv.po0000644000175000017500000001062307763421517011435 00000000000000# atomix for latvian # Copyright (C) YEAR Free Software Foundation, Inc. # FIRST AUTHOR , YEAR. # msgid "" msgstr "" "Project-Id-Version: atomix for latvian\n" "POT-Creation-Date: 2003-12-03 18:47+0100\n" "PO-Revision-Date: 2002-05-01 20:05+0200\n" "Last-Translator: Peteris Krisjanis \n" "Language-Team: Latvian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: src/atomix-ui.xml.in.h:1 msgid "Continue paused game" msgstr "Turpināt nopauzēto spēli" #: src/atomix-ui.xml.in.h:2 msgid "E_xit" msgstr "Izi_et" #: src/atomix-ui.xml.in.h:3 msgid "End a game" msgstr "Beigt spēli" #: src/atomix-ui.xml.in.h:4 msgid "Exit game" msgstr "Iziet no spēles" #: src/atomix-ui.xml.in.h:5 msgid "Pause the running game" msgstr "Pauzēt palaisto spēli" #: src/atomix-ui.xml.in.h:6 msgid "Reset level" msgstr "Pārstartēt līmeni" #: src/atomix-ui.xml.in.h:7 msgid "Restores start situation" msgstr "Atjauno starta situāciju" #: src/atomix-ui.xml.in.h:8 msgid "Set preferences" msgstr "Uzstādīt preferences" #: src/atomix-ui.xml.in.h:9 msgid "Skip _level" msgstr "Izlaist _līmeni" #: src/atomix-ui.xml.in.h:10 msgid "Skip the current level" msgstr "Izlaist pašreizējo līmeni" #: src/atomix-ui.xml.in.h:11 msgid "Start a new game" msgstr "Sākt jaunu spēli" #: src/atomix-ui.xml.in.h:12 msgid "Undo the last move" msgstr "Atsaukt pēdējo gājienu" #: src/atomix-ui.xml.in.h:13 msgid "View game credits" msgstr "Parādīt spēles kredītus" #: src/atomix-ui.xml.in.h:14 msgid "View highscores" msgstr "Parādīt labākos rezultātus" #: src/atomix-ui.xml.in.h:15 msgid "_About" msgstr "_Par" #: src/atomix-ui.xml.in.h:16 msgid "_Continue game" msgstr "_Turpināt spēli" #: src/atomix-ui.xml.in.h:17 msgid "_Edit" msgstr "_Rediģēt" #: src/atomix-ui.xml.in.h:18 msgid "_End Game" msgstr "_Spēles Beigas" #: src/atomix-ui.xml.in.h:19 msgid "_Game" msgstr "_Spēle" #: src/atomix-ui.xml.in.h:20 msgid "_Help" msgstr "_Palīdzība" #: src/atomix-ui.xml.in.h:21 msgid "_New Game" msgstr "_Jauna Spēle" #: src/atomix-ui.xml.in.h:22 msgid "_Pause game" msgstr "_Pauzēt spēli" #: src/atomix-ui.xml.in.h:23 msgid "_Preferences ..." msgstr "_Preferences ..." #: src/atomix-ui.xml.in.h:24 msgid "_Scores ..." msgstr "_Rezultāti ..." #: src/atomix-ui.xml.in.h:25 msgid "_Undo move" msgstr "_Atsaukt gājienu" #: src/level-manager.c:171 msgid "Couldn't find level sequence description." msgstr "Nevarēja atrast līmeņu secības aprakstu." #: src/level-manager.c:185 msgid "No level found." msgstr "Nav atrastu līmeņu." #: src/level-manager.c:286 #, c-format msgid "Found level '%s' in: %s" msgstr "Atrasts līmenis '%s' iekš %s" #: src/main.c:118 src/main.c:444 atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: src/main.c:145 msgid "Copyright (C) 1999-2002 Jens Finke" msgstr "Autortiesības (C) 1999-2002 Jens Finke" #: src/main.c:146 msgid "A mind game about atoms and molecules." msgstr "Prātošanas spēle par atomiem un molekulām" #: src/main.c:456 msgid "Congratulations! You have finished all Atomix levels." msgstr "Apsveicam! Jūs esat pabeiguši visus Atomix līmeņus." #: src/main.c:467 msgid "Couldn't find at least one level." msgstr "Nevarēja atrast kaut vienu līmeni." #: src/main.c:472 msgid "Do you want to finish the game?" msgstr "Vai jūs vēlaties beigt spēli?" #: src/main.c:591 src/main.c:597 src/main.c:602 #, c-format msgid "Couldn't create directory: %s" msgstr "Nevarēja izveidot direktoriju: %s" #. create statistics frame #: src/main.c:701 msgid "Statistics" msgstr "Statistika" #: src/main.c:707 msgid "Level:" msgstr "Līmenis:" #: src/main.c:708 msgid "Molecule:" msgstr "Molekula:" #: src/main.c:709 msgid "Score:" msgstr "Rezultāts:" #: src/main.c:710 msgid "Time:" msgstr "Laiks:" #: src/main.c:750 #, c-format msgid "Couldn't find file: %s" msgstr "Nevarēja atrast failu: %s" #: src/theme-manager.c:141 msgid "No themes found." msgstr "Nav atrastu tēmu." #: src/theme-manager.c:205 #, c-format msgid "Found theme '%s' in: %s" msgstr "Atradām tēmu '%s' iekš %s" #: atomix.desktop.in.h:2 msgid "Molecule mind game" msgstr "Molekulu Domāšanas Spēle" #~ msgid "Atomix Splash" #~ msgstr "Atomix Splash" #~ msgid "Game Paused" #~ msgstr "Spēle Nopauzēta" #~ msgid "Game Over" #~ msgstr "Spēles Beigas" #~ msgid "Atomix - Molecule Mind Game" #~ msgstr "Atomix - Molekulas Domāšanas Spēle" atomix-2.14.0/po/mk.po0000755000175000017500000001472010371615475011425 00000000000000# translation of mk.po to Macedonian # translation of atomix.HEAD.po to # translation of atomix.HEAD.po to Macedonian # This file is distributed under the same license as the atomix.HEAD package. # Copyright (C) 2005 THE atomix.HEAD'S COPYRIGHT HOLDER # Ime Prezime , 2003. # Arangel Angov , 2005, 2006. # # msgid "" msgstr "" "Project-Id-Version: mk\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-02-06 05:39+0100\n" "PO-Revision-Date: 2006-02-06 10:47+0100\n" "Last-Translator: Arangel Angov \n" "Language-Team: Macedonian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.10.2\n" #: ../level/aceticacid.atomix.xml.h:1 msgid "Acetic Acid" msgstr "Оцетна киселина" #: ../level/acetone.atomix.xml.h:1 msgid "Acetone" msgstr "Ацетон" #: ../level/butanol.atomix.xml.h:1 msgid "Butanol" msgstr "Бутанол" #: ../level/cyclobutane.atomix.xml.h:1 msgid "Cyclobutane" msgstr "Циклобутан" #: ../level/dimethylether.atomix.xml.h:1 msgid "Dimethyl Ether" msgstr "Диметил етер" #: ../level/ethanal.atomix.xml.h:1 msgid "Ethanal" msgstr "Етанал" #: ../level/ethane.atomix.xml.h:1 msgid "Ethane" msgstr "Етан" #: ../level/ethanol.atomix.xml.h:1 msgid "Ethanol" msgstr "Етанол" #: ../level/ethylene.atomix.xml.h:1 msgid "Ethylene" msgstr "Етилен" #: ../level/glycerin.atomix.xml.h:1 msgid "Glycerin" msgstr "Глицерин" #: ../level/lactic-acid.atomix.xml.h:1 msgid "Lactic Acid" msgstr "Млечна киселина" #: ../level/methanal.atomix.xml.h:1 msgid "Methanal" msgstr "Метанал" #: ../level/methane.atomix.xml.h:1 msgid "Methane" msgstr "Метан" #: ../level/methanol.atomix.xml.h:1 msgid "Methanol" msgstr "Метанол" #: ../level/propanal.atomix.xml.h:1 msgid "Propanal" msgstr "Пропанал" #: ../level/propylene.atomix.xml.h:1 msgid "Propylene" msgstr "Пропилен" #: ../level/pyran.atomix.xml.h:1 msgid "Pyran" msgstr "Пиран" #: ../level/transbutylen.atomix.xml.h:1 msgid "Trans Butylen" msgstr "Транс бутилен" #: ../level/water.atomix.xml.h:1 msgid "Water" msgstr "Вода" #: ../src/atomix-ui.xml.h:1 msgid "Continue paused game" msgstr "Продолжи со паузираната игра" #: ../src/atomix-ui.xml.h:2 msgid "End a game" msgstr "Крај на играта" #: ../src/atomix-ui.xml.h:3 msgid "Pause the running game" msgstr "Паузирај ја вклучената игра" #: ../src/atomix-ui.xml.h:4 msgid "Reset level" msgstr "Ресетирај ниво" #: ../src/atomix-ui.xml.h:5 msgid "Restores start situation" msgstr "Ја обновува почетната ситуација" #: ../src/atomix-ui.xml.h:6 msgid "Set preferences" msgstr "Постави преференци" #: ../src/atomix-ui.xml.h:7 msgid "Skip _level" msgstr "Прескокни _ниво" #: ../src/atomix-ui.xml.h:8 msgid "Skip the current level" msgstr "Прескокни го тековното ниво" #: ../src/atomix-ui.xml.h:9 msgid "Start a new game" msgstr "Започни нова игра" #: ../src/atomix-ui.xml.h:10 msgid "Undo the last move" msgstr "Врати на последниот потег" #: ../src/atomix-ui.xml.h:11 msgid "View highscores" msgstr "Види најдобри резултати" #: ../src/atomix-ui.xml.h:12 msgid "_Continue game" msgstr "_Продолжи ја играта" #: ../src/atomix-ui.xml.h:13 msgid "_End Game" msgstr "_Прекини игра" #: ../src/atomix-ui.xml.h:14 msgid "_Game" msgstr "_Игра" #. submenu name="Edit" _label="_Edit"> #. #. #. #. \n" "http://gnome.softver.org.mk" #: ../src/main.c:488 ../atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: ../src/main.c:499 msgid "Congratulations! You have finished all Atomix levels." msgstr "Честитки! Ги поминавте сите нивоа на Atomix." #: ../src/main.c:509 msgid "Couldn't find at least one level." msgstr "Не може да најде барем едно ниво. " #: ../src/main.c:514 msgid "Do you want to finish the game?" msgstr "Дали сакате да ја завршите играта?" #. create statistics frame #: ../src/main.c:728 msgid "Statistics" msgstr "Статистики" #: ../src/main.c:734 msgid "Level:" msgstr "Ниво: " #: ../src/main.c:735 msgid "Molecule:" msgstr "Молекули:" #: ../src/main.c:736 msgid "Formula:" msgstr "Формула:" #: ../src/main.c:737 msgid "Score:" msgstr "Резултат: " #: ../src/main.c:738 msgid "Time:" msgstr "Време:" #: ../src/main.c:778 #, c-format msgid "Couldn't find file: %s" msgstr "Не може да пронајде датотека: %s" #: ../src/theme-manager.c:135 msgid "No themes found." msgstr "Не е пронајдена тема." #: ../src/theme-manager.c:193 #, c-format msgid "Found theme '%s' in: %s" msgstr "Пронајдени теми '%s' во: %s" #: ../atomix.desktop.in.h:2 msgid "Molecule puzzle game" msgstr "Мисловна игра со молекули" atomix-2.14.0/po/ml.po0000644000175000017500000000725207712745017011426 00000000000000# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # FSF-India , 2003. # msgid "" msgstr "" "Project-Id-Version:atomix.HEAD\n" "POT-Creation-Date: 2003-06-06 03:42+0200\n" "PO-Revision-Date: 2003-07-05 10:29+0530\n" "Last-Translator: FSF-India \n" "Language-Team: Malayalam \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: src/atomix-ui.xml.in.h:1 msgid "Continue paused game" msgstr "" #: src/atomix-ui.xml.in.h:2 msgid "E_xit" msgstr "പുറത്ത് കടക്കുക" #: src/atomix-ui.xml.in.h:3 msgid "End a game" msgstr "" #: src/atomix-ui.xml.in.h:4 msgid "Exit game" msgstr "" #: src/atomix-ui.xml.in.h:5 msgid "Pause the running game" msgstr "" #: src/atomix-ui.xml.in.h:6 msgid "Reset level" msgstr "" #: src/atomix-ui.xml.in.h:7 msgid "Restores start situation" msgstr "" #: src/atomix-ui.xml.in.h:8 msgid "Set preferences" msgstr "" #: src/atomix-ui.xml.in.h:9 msgid "Skip _level" msgstr "" #: src/atomix-ui.xml.in.h:10 msgid "Skip the current level" msgstr "" #: src/atomix-ui.xml.in.h:11 msgid "Start a new game" msgstr "ഒരു പുതിയ കളി തുടങ്ങൂ" #: src/atomix-ui.xml.in.h:12 msgid "Undo the last move" msgstr "അവസാന നീക്കം വേണ്ടാതാക്കുക" #: src/atomix-ui.xml.in.h:13 msgid "View game credits" msgstr "" #: src/atomix-ui.xml.in.h:14 msgid "View highscores" msgstr "" #: src/atomix-ui.xml.in.h:15 msgid "_About" msgstr "കുറിപ്പ്" #: src/atomix-ui.xml.in.h:16 msgid "_Continue game" msgstr "" #: src/atomix-ui.xml.in.h:17 msgid "_Edit" msgstr "ചിട്ട" #: src/atomix-ui.xml.in.h:18 msgid "_End Game" msgstr "" #: src/atomix-ui.xml.in.h:19 msgid "_Game" msgstr "കളി" #: src/atomix-ui.xml.in.h:20 msgid "_Help" msgstr "സഹായം" #: src/atomix-ui.xml.in.h:21 msgid "_New Game" msgstr "" #: src/atomix-ui.xml.in.h:22 msgid "_Pause game" msgstr "ചെറിയ ഇടവേള" #: src/atomix-ui.xml.in.h:23 msgid "_Preferences ..." msgstr "" #: src/atomix-ui.xml.in.h:24 msgid "_Scores ..." msgstr "" #: src/atomix-ui.xml.in.h:25 msgid "_Undo move" msgstr "നീക്കം വേണ്ട" #: src/level-manager.c:171 msgid "Couldn't find level sequence description." msgstr "" #: src/level-manager.c:185 msgid "No level found." msgstr "" #: src/level-manager.c:286 #, c-format msgid "Found level '%s' in: %s" msgstr "" #: src/main.c:118 src/main.c:444 atomix.desktop.in.h:1 msgid "Atomix" msgstr "" #: src/main.c:145 msgid "Copyright (C) 1999-2002 Jens Finke" msgstr "" #: src/main.c:146 msgid "A mind game about atoms and molecules." msgstr "" #: src/main.c:456 msgid "Congratulations! You have finished all Atomix levels." msgstr "" #: src/main.c:467 msgid "Couldn't find at least one level." msgstr "" #: src/main.c:472 msgid "Do you want to finish the game?" msgstr "" #: src/main.c:591 src/main.c:597 src/main.c:602 #, c-format msgid "Couldn't create directory: %s" msgstr "" #. create statistics frame #: src/main.c:701 msgid "Statistics" msgstr "സ്ഥിതിവിവരങ്ങള്‌" #: src/main.c:707 msgid "Level:" msgstr "" #: src/main.c:708 msgid "Molecule:" msgstr "" #: src/main.c:709 msgid "Score:" msgstr "" #: src/main.c:710 msgid "Time:" msgstr "" #: src/main.c:750 #, c-format msgid "Couldn't find file: %s" msgstr "" #: src/theme-manager.c:141 msgid "No themes found." msgstr "" #: src/theme-manager.c:205 #, c-format msgid "Found theme '%s' in: %s" msgstr "" #: atomix.desktop.in.h:2 msgid "Molecule mind game" msgstr "" atomix-2.14.0/po/ms.po0000755000175000017500000001117407763421517011440 00000000000000# Malay Translation for atomix # Copyright (C) 2002 Free Software Foundation, Inc. # 1. Mohamad Afifi Omar (App) , 2002. # 2. Hasbullah Bin Pit ,2002. msgid "" msgstr "" "Project-Id-Version: atomix HEAD\n" "POT-Creation-Date: 2003-12-03 18:47+0100\n" "PO-Revision-Date: 2002-02-20 09:49+0800\n" "Last-Translator: Hasbullah Bin Pit \n" "Language-Team: Bahasa Melayu \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-1\n" "Content-Transfer-Encoding: 8bit\n" #: src/atomix-ui.xml.in.h:1 msgid "Continue paused game" msgstr "Teruskan permainan yang dipause" #: src/atomix-ui.xml.in.h:2 msgid "E_xit" msgstr "_Keluar" #: src/atomix-ui.xml.in.h:3 msgid "End a game" msgstr "Hentikan permainan ini" #: src/atomix-ui.xml.in.h:4 msgid "Exit game" msgstr "Keluar dari permainan" #: src/atomix-ui.xml.in.h:5 msgid "Pause the running game" msgstr "Pause permainan yang sedang berlangsung" #: src/atomix-ui.xml.in.h:6 msgid "Reset level" msgstr "Reset Aras" #: src/atomix-ui.xml.in.h:7 msgid "Restores start situation" msgstr "Kembali semula kepada keadaan ketika mula" #: src/atomix-ui.xml.in.h:8 msgid "Set preferences" msgstr "Set preferences" #: src/atomix-ui.xml.in.h:9 msgid "Skip _level" msgstr "_Lompat Aras" #: src/atomix-ui.xml.in.h:10 msgid "Skip the current level" msgstr "Lompat aras sekarang" #: src/atomix-ui.xml.in.h:11 msgid "Start a new game" msgstr "Mulakan permainan baru" #: src/atomix-ui.xml.in.h:12 msgid "Undo the last move" msgstr "Tarik kembali pergerakkan tadi" #: src/atomix-ui.xml.in.h:13 msgid "View game credits" msgstr "Lihat senarai pencipta permainan" #: src/atomix-ui.xml.in.h:14 msgid "View highscores" msgstr "Lihat markah tertinggi" #: src/atomix-ui.xml.in.h:15 msgid "_About" msgstr "Mengen_ai" #: src/atomix-ui.xml.in.h:16 msgid "_Continue game" msgstr "Teru_skan permainan ini" #: src/atomix-ui.xml.in.h:17 msgid "_Edit" msgstr "Ubahsua_i" #: src/atomix-ui.xml.in.h:18 msgid "_End Game" msgstr "Tamatkan P_ermainan" #: src/atomix-ui.xml.in.h:19 msgid "_Game" msgstr "_Permainan" #: src/atomix-ui.xml.in.h:20 msgid "_Help" msgstr "_Bantuan" #: src/atomix-ui.xml.in.h:21 msgid "_New Game" msgstr "Permaina_n Baru" #: src/atomix-ui.xml.in.h:22 msgid "_Pause game" msgstr "_Pause permainan" #: src/atomix-ui.xml.in.h:23 msgid "_Preferences ..." msgstr "_Preferences ..." #: src/atomix-ui.xml.in.h:24 msgid "_Scores ..." msgstr "_Markah ..." #: src/atomix-ui.xml.in.h:25 msgid "_Undo move" msgstr "Tarik ba_lik" #: src/level-manager.c:171 msgid "Couldn't find level sequence description." msgstr "Harap maaf tuan, gagal mencari keterangan mengenai susunan aras" #: src/level-manager.c:185 msgid "No level found." msgstr "Tiada aras dijumpai." #: src/level-manager.c:286 #, c-format msgid "Found level '%s' in: %s" msgstr "Menjumpai aras '%s' didalam: %s" #: src/main.c:118 src/main.c:444 atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: src/main.c:145 msgid "Copyright (C) 1999-2002 Jens Finke" msgstr "Hakcipta (C) 1999-2002 Jens Finke" #: src/main.c:146 msgid "A mind game about atoms and molecules." msgstr "Permainan minda perihal atom and molekul." #: src/main.c:456 msgid "Congratulations! You have finished all Atomix levels." msgstr "" "Tahniah! Anda telah menghabiskan semua aras didalam Atomix, khatam la ni " "ye ?. Dasatt" #: src/main.c:467 msgid "Couldn't find at least one level." msgstr "Harap maaf tuan, tidak dapat menjumpai sebarang aras." #: src/main.c:472 msgid "Do you want to finish the game?" msgstr "Betul tuan mahu menamatkan permainan ini?" #: src/main.c:591 src/main.c:597 src/main.c:602 #, c-format msgid "Couldn't create directory: %s" msgstr "Harap maaf tuan, gagal mencipta direktori: %s" #. create statistics frame #: src/main.c:701 msgid "Statistics" msgstr "Statistik" #: src/main.c:707 msgid "Level:" msgstr "Aras" #: src/main.c:708 msgid "Molecule:" msgstr "Molekul" #: src/main.c:709 msgid "Score:" msgstr "Markah:" #: src/main.c:710 msgid "Time:" msgstr "Masa:" #: src/main.c:750 #, c-format msgid "Couldn't find file: %s" msgstr "Tidak dapat menjumpai fail: %s" #: src/theme-manager.c:141 msgid "No themes found." msgstr "Tiada tema dijumpai" #: src/theme-manager.c:205 #, c-format msgid "Found theme '%s' in: %s" msgstr "Menjumpai tema '%s' didalam: %s" #: atomix.desktop.in.h:2 msgid "Molecule mind game" msgstr "Permainan Minda Molekul" #~ msgid "Atomix Splash" #~ msgstr "Atomix Splash" #~ msgid "Game Paused" #~ msgstr "Permainan Ini Dihentikan Sebentar" #~ msgid "Game Over" #~ msgstr "Permainan Tamat" #~ msgid "Atomix - Molecule Mind Game" #~ msgstr "Atomix - Permainan Minda Molekul" atomix-2.14.0/po/nb.po0000644000175000017500000001254710365127204011406 00000000000000# Norwegian (bokmål) translation of atomix. # Copyright (C) 2001 Free Software Foundation, Inc. # Kjartan Maraas , 2001-2005. # msgid "" msgstr "" "Project-Id-Version: atomix\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-01-23 11:22+0100\n" "PO-Revision-Date: 2006-01-23 11:22+0100\n" "Last-Translator: Kjartan Maraas \n" "Language-Team: Norwegian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8-bit\n" #: ../level/aceticacid.atomix.xml.h:1 msgid "Acetic Acid" msgstr "Syrlig syre" #: ../level/acetone.atomix.xml.h:1 msgid "Acetone" msgstr "Aceton" #: ../level/butanol.atomix.xml.h:1 msgid "Butanol" msgstr "Butanol" #: ../level/cyclobutane.atomix.xml.h:1 msgid "Cyclobutane" msgstr "Syklobutan" #: ../level/dimethylether.atomix.xml.h:1 msgid "Dimethyl Ether" msgstr "Dimetyl eter" #: ../level/ethanal.atomix.xml.h:1 msgid "Ethanal" msgstr "Etanal" #: ../level/ethane.atomix.xml.h:1 msgid "Ethane" msgstr "Etan" #: ../level/ethanol.atomix.xml.h:1 msgid "Ethanol" msgstr "Etanol" #: ../level/ethylene.atomix.xml.h:1 msgid "Ethylene" msgstr "Etylen" #: ../level/glycerin.atomix.xml.h:1 msgid "Glycerin" msgstr "Glyserin" #: ../level/lactic-acid.atomix.xml.h:1 msgid "Lactic Acid" msgstr "Laktisk syre" #: ../level/methanal.atomix.xml.h:1 msgid "Methanal" msgstr "Metanal" #: ../level/methane.atomix.xml.h:1 msgid "Methane" msgstr "Metan" #: ../level/methanol.atomix.xml.h:1 msgid "Methanol" msgstr "Metanol" #: ../level/propanal.atomix.xml.h:1 msgid "Propanal" msgstr "Propanal" #: ../level/propylene.atomix.xml.h:1 msgid "Propylene" msgstr "Propylen" #: ../level/pyran.atomix.xml.h:1 msgid "Pyran" msgstr "Pyran" #: ../level/transbutylen.atomix.xml.h:1 msgid "Trans Butylen" msgstr "Trans butylen" #: ../level/water.atomix.xml.h:1 msgid "Water" msgstr "Vann" #: ../src/atomix-ui.xml.h:1 msgid "Continue paused game" msgstr "Fortsett pauset spill" #: ../src/atomix-ui.xml.h:2 msgid "End a game" msgstr "Avslutt et spill" #: ../src/atomix-ui.xml.h:3 msgid "Pause the running game" msgstr "Pause et kjørende spill" #: ../src/atomix-ui.xml.h:4 msgid "Reset level" msgstr "Nullstill nivå" #: ../src/atomix-ui.xml.h:5 msgid "Restores start situation" msgstr "Gå tilbake til utgangspunktet" #: ../src/atomix-ui.xml.h:6 msgid "Set preferences" msgstr "Sett brukervalg" #: ../src/atomix-ui.xml.h:7 msgid "Skip _level" msgstr "Hopp _over nivå" #: ../src/atomix-ui.xml.h:8 msgid "Skip the current level" msgstr "Hopp over aktivt nivå" #: ../src/atomix-ui.xml.h:9 msgid "Start a new game" msgstr "Start et nytt spill" #: ../src/atomix-ui.xml.h:10 msgid "Undo the last move" msgstr "Angre forrige trekk" #: ../src/atomix-ui.xml.h:11 msgid "View highscores" msgstr "Vis poengsummer" #: ../src/atomix-ui.xml.h:12 msgid "_Continue game" msgstr "_Fortsett spill" #: ../src/atomix-ui.xml.h:13 msgid "_End Game" msgstr "_Avslutt spill" #: ../src/atomix-ui.xml.h:14 msgid "_Game" msgstr "_Spill" #. submenu name="Edit" _label="_Edit"> #. #. #. #. " #: ../src/main.c:488 ../atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: ../src/main.c:499 msgid "Congratulations! You have finished all Atomix levels." msgstr "Gratulerer! Du har fullført alle nivåer i Atomix." #: ../src/main.c:509 msgid "Couldn't find at least one level." msgstr "Kunne ikke finne minst ett nivå." #: ../src/main.c:514 msgid "Do you want to finish the game?" msgstr "Vil du avslutte dette spillet?" #. create statistics frame #: ../src/main.c:728 msgid "Statistics" msgstr "Statistikk" #: ../src/main.c:734 msgid "Level:" msgstr "Nivå:" #: ../src/main.c:735 msgid "Molecule:" msgstr "Molekyl:" #: ../src/main.c:736 msgid "Formula:" msgstr "Formel:" #: ../src/main.c:737 msgid "Score:" msgstr "Poeng:" #: ../src/main.c:738 msgid "Time:" msgstr "Tid:" #: ../src/main.c:778 #, c-format msgid "Couldn't find file: %s" msgstr "Kunne ikke finne fil: %s" #: ../src/theme-manager.c:135 msgid "No themes found." msgstr "Ingen tema funnet." #: ../src/theme-manager.c:193 #, c-format msgid "Found theme '%s' in: %s" msgstr "Fant tema «%s» i: %s" #: ../atomix.desktop.in.h:2 msgid "Molecule puzzle game" msgstr "Puslespill med molekyler" atomix-2.14.0/po/nl.po0000644000175000017500000001400510357524207011414 00000000000000# Dutch Translation of Atomix # Copyright (C) 2001 Free Software Foundation, Inc. # Meilof Veeningen , 2001. # Marc Jan Hemmes , 2003. # Tino Meinen , 2005, 2006. msgid "" msgstr "" "Project-Id-Version: atomix\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-01-06 13:01+0100\n" "PO-Revision-Date: 2006-01-06 17:56+0100\n" "Last-Translator: Tino Meinen \n" "Language-Team: Dutch \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../level/aceticacid.atomix.xml.h:1 msgid "Acetic Acid" msgstr "Acetaanzuur" #: ../level/acetone.atomix.xml.h:1 msgid "Acetone" msgstr "Aceton" #: ../level/butanol.atomix.xml.h:1 msgid "Butanol" msgstr "Butanol" #: ../level/cyclobutane.atomix.xml.h:1 msgid "Cyclobutane" msgstr "Cyclobutaan" #: ../level/dimethylether.atomix.xml.h:1 msgid "Dimethyl Ether" msgstr "Dimethyl ether" #: ../level/ethanal.atomix.xml.h:1 msgid "Ethanal" msgstr "Ethanal" #: ../level/ethane.atomix.xml.h:1 msgid "Ethane" msgstr "Ethaan" #: ../level/ethanol.atomix.xml.h:1 msgid "Ethanol" msgstr "Ethanol" #: ../level/ethylene.atomix.xml.h:1 msgid "Ethylene" msgstr "Ethylene" #: ../level/glycerin.atomix.xml.h:1 msgid "Glycerin" msgstr "Glycerine" #: ../level/lactic-acid.atomix.xml.h:1 msgid "Lactic Acid" msgstr "Lactaanzuur" #: ../level/methanal.atomix.xml.h:1 msgid "Methanal" msgstr "Methanal" #: ../level/methane.atomix.xml.h:1 msgid "Methane" msgstr "Methaan" #: ../level/methanol.atomix.xml.h:1 msgid "Methanol" msgstr "Methanol" #: ../level/propanal.atomix.xml.h:1 msgid "Propanal" msgstr "Propanal" #: ../level/propylene.atomix.xml.h:1 msgid "Propylene" msgstr "Propylene" #: ../level/pyran.atomix.xml.h:1 msgid "Pyran" msgstr "Pyraan" #: ../level/transbutylen.atomix.xml.h:1 msgid "Trans Butylen" msgstr "Transbuthyleen" #: ../level/water.atomix.xml.h:1 msgid "Water" msgstr "Water" #: ../src/atomix-ui.xml.h:1 msgid "Continue paused game" msgstr "Spel hervatten" #: ../src/atomix-ui.xml.h:2 msgid "End a game" msgstr "Een spel beëindigen" #: ../src/atomix-ui.xml.h:3 msgid "Pause the running game" msgstr "Het spel pauzeren" #: ../src/atomix-ui.xml.h:4 msgid "Reset level" msgstr "Niveau herstarten" #: ../src/atomix-ui.xml.h:5 msgid "Restores start situation" msgstr "Herstelt alles naar startpositie" #: ../src/atomix-ui.xml.h:6 msgid "Set preferences" msgstr "Voorkeuren instellen" #: ../src/atomix-ui.xml.h:7 msgid "Skip _level" msgstr "_Niveau overslaan" #: ../src/atomix-ui.xml.h:8 msgid "Skip the current level" msgstr "Het huidige niveau overslaan" #: ../src/atomix-ui.xml.h:9 msgid "Start a new game" msgstr "Een nieuw spel starten" #: ../src/atomix-ui.xml.h:10 msgid "Undo the last move" msgstr "Ga 1 stap terug." #: ../src/atomix-ui.xml.h:11 msgid "View highscores" msgstr "De scores bekijken" #: ../src/atomix-ui.xml.h:12 msgid "_Continue game" msgstr "Spel _hervatten" #: ../src/atomix-ui.xml.h:13 msgid "_End Game" msgstr "_Einde spel" #: ../src/atomix-ui.xml.h:14 msgid "_Game" msgstr "_Spel" #. submenu name="Edit" _label="_Edit"> #. #. #. #. , 2001-2005. # msgid "" msgstr "" "Project-Id-Version: atomix\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-01-23 11:22+0100\n" "PO-Revision-Date: 2006-01-23 11:22+0100\n" "Last-Translator: Kjartan Maraas \n" "Language-Team: Norwegian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8-bit\n" #: ../level/aceticacid.atomix.xml.h:1 msgid "Acetic Acid" msgstr "Syrlig syre" #: ../level/acetone.atomix.xml.h:1 msgid "Acetone" msgstr "Aceton" #: ../level/butanol.atomix.xml.h:1 msgid "Butanol" msgstr "Butanol" #: ../level/cyclobutane.atomix.xml.h:1 msgid "Cyclobutane" msgstr "Syklobutan" #: ../level/dimethylether.atomix.xml.h:1 msgid "Dimethyl Ether" msgstr "Dimetyl eter" #: ../level/ethanal.atomix.xml.h:1 msgid "Ethanal" msgstr "Etanal" #: ../level/ethane.atomix.xml.h:1 msgid "Ethane" msgstr "Etan" #: ../level/ethanol.atomix.xml.h:1 msgid "Ethanol" msgstr "Etanol" #: ../level/ethylene.atomix.xml.h:1 msgid "Ethylene" msgstr "Etylen" #: ../level/glycerin.atomix.xml.h:1 msgid "Glycerin" msgstr "Glyserin" #: ../level/lactic-acid.atomix.xml.h:1 msgid "Lactic Acid" msgstr "Laktisk syre" #: ../level/methanal.atomix.xml.h:1 msgid "Methanal" msgstr "Metanal" #: ../level/methane.atomix.xml.h:1 msgid "Methane" msgstr "Metan" #: ../level/methanol.atomix.xml.h:1 msgid "Methanol" msgstr "Metanol" #: ../level/propanal.atomix.xml.h:1 msgid "Propanal" msgstr "Propanal" #: ../level/propylene.atomix.xml.h:1 msgid "Propylene" msgstr "Propylen" #: ../level/pyran.atomix.xml.h:1 msgid "Pyran" msgstr "Pyran" #: ../level/transbutylen.atomix.xml.h:1 msgid "Trans Butylen" msgstr "Trans butylen" #: ../level/water.atomix.xml.h:1 msgid "Water" msgstr "Vann" #: ../src/atomix-ui.xml.h:1 msgid "Continue paused game" msgstr "Fortsett pauset spill" #: ../src/atomix-ui.xml.h:2 msgid "End a game" msgstr "Avslutt et spill" #: ../src/atomix-ui.xml.h:3 msgid "Pause the running game" msgstr "Pause et kjørende spill" #: ../src/atomix-ui.xml.h:4 msgid "Reset level" msgstr "Nullstill nivå" #: ../src/atomix-ui.xml.h:5 msgid "Restores start situation" msgstr "Gå tilbake til utgangspunktet" #: ../src/atomix-ui.xml.h:6 msgid "Set preferences" msgstr "Sett brukervalg" #: ../src/atomix-ui.xml.h:7 msgid "Skip _level" msgstr "Hopp _over nivå" #: ../src/atomix-ui.xml.h:8 msgid "Skip the current level" msgstr "Hopp over aktivt nivå" #: ../src/atomix-ui.xml.h:9 msgid "Start a new game" msgstr "Start et nytt spill" #: ../src/atomix-ui.xml.h:10 msgid "Undo the last move" msgstr "Angre forrige trekk" #: ../src/atomix-ui.xml.h:11 msgid "View highscores" msgstr "Vis poengsummer" #: ../src/atomix-ui.xml.h:12 msgid "_Continue game" msgstr "_Fortsett spill" #: ../src/atomix-ui.xml.h:13 msgid "_End Game" msgstr "_Avslutt spill" #: ../src/atomix-ui.xml.h:14 msgid "_Game" msgstr "_Spill" #. submenu name="Edit" _label="_Edit"> #. #. #. #. " #: ../src/main.c:488 ../atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: ../src/main.c:499 msgid "Congratulations! You have finished all Atomix levels." msgstr "Gratulerer! Du har fullført alle nivåer i Atomix." #: ../src/main.c:509 msgid "Couldn't find at least one level." msgstr "Kunne ikke finne minst ett nivå." #: ../src/main.c:514 msgid "Do you want to finish the game?" msgstr "Vil du avslutte dette spillet?" #. create statistics frame #: ../src/main.c:728 msgid "Statistics" msgstr "Statistikk" #: ../src/main.c:734 msgid "Level:" msgstr "Nivå:" #: ../src/main.c:735 msgid "Molecule:" msgstr "Molekyl:" #: ../src/main.c:736 msgid "Formula:" msgstr "Formel:" #: ../src/main.c:737 msgid "Score:" msgstr "Poeng:" #: ../src/main.c:738 msgid "Time:" msgstr "Tid:" #: ../src/main.c:778 #, c-format msgid "Couldn't find file: %s" msgstr "Kunne ikke finne fil: %s" #: ../src/theme-manager.c:135 msgid "No themes found." msgstr "Ingen tema funnet." #: ../src/theme-manager.c:193 #, c-format msgid "Found theme '%s' in: %s" msgstr "Fant tema «%s» i: %s" #: ../atomix.desktop.in.h:2 msgid "Molecule puzzle game" msgstr "Puslespill med molekyler" atomix-2.14.0/po/pa.po0000644000175000017500000001475510340107627011412 00000000000000# translation of pa.po to Punjabi # This file is distributed under the same license as the PACKAGE package. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER. # Amanpreet Singh Alam , 2005. # msgid "" msgstr "" "Project-Id-Version: pa\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2005-11-20 20:18+0530\n" "PO-Revision-Date: 2005-11-20 20:26+0530\n" "Last-Translator: Amanpreet Singh Alam \n" "Language-Team: Punjabi \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.9.1\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: level/aceticacid.atomix.xml.h:1 msgid "Acetic Acid" msgstr "ਸਿਰਕੇ ਦਾ ਤੇਜ਼ਾਬ" #: level/acetone.atomix.xml.h:1 msgid "Acetone" msgstr "ਐਸੀਟੋਨ" #: level/butanol.atomix.xml.h:1 msgid "Butanol" msgstr "ਬੁਟਨੋਲ" #: level/cyclobutane.atomix.xml.h:1 msgid "Cyclobutane" msgstr "ਸਾਇਕਲੋਬੁਟੀਨ" #: level/dimethylether.atomix.xml.h:1 msgid "Dimethyl Ether" msgstr "ਡਾਈਮੀਥਲ ਈਥਰ" #: level/ethanal.atomix.xml.h:1 msgid "Ethanal" msgstr "ਈਥਨਲ" #: level/ethane.atomix.xml.h:1 msgid "Ethane" msgstr "ਈਥੇਨ" #: level/ethanol.atomix.xml.h:1 msgid "Ethanol" msgstr "ਈਥੇਨੋਲ" #: level/ethylene.atomix.xml.h:1 msgid "Ethylene" msgstr "ਈਥਨੀਲ" #: level/glycerin.atomix.xml.h:1 msgid "Glycerin" msgstr "ਗਲਿਸਰੀਨ" #: level/lactic-acid.atomix.xml.h:1 msgid "Lactic Acid" msgstr "ਲੈਟਿਕ ਤੇਜ਼ਾਬ" #: level/methanal.atomix.xml.h:1 msgid "Methanal" msgstr "ਮੀਥੇਨੋਲ" #: level/methane.atomix.xml.h:1 msgid "Methane" msgstr "ਮੀਥੇਨ" #: level/methanol.atomix.xml.h:1 msgid "Methanol" msgstr "ਮੀਥੇਨੋਲ" #: level/propanal.atomix.xml.h:1 msgid "Propanal" msgstr "ਪਰੋਨਲ" #: level/propylene.atomix.xml.h:1 msgid "Propylene" msgstr "ਪਰੋਪਲੀਨ" #: level/pyran.atomix.xml.h:1 msgid "Pyran" msgstr "ਪੀਰੇਨ" #: level/transbutylen.atomix.xml.h:1 msgid "Trans Butylen" msgstr "ਟਰਾਂਸ ਬੁਟਲੀਨ" #: level/water.atomix.xml.h:1 msgid "Water" msgstr "ਪਾਣੀ" #: src/atomix-ui.xml.h:1 msgid "Continue paused game" msgstr "ਰੁਕੀ ਖੇਡ ਜਾਰੀ ਰੱਖੋ" #: src/atomix-ui.xml.h:2 msgid "End a game" msgstr "ਇੱਕ ਖੇਡ ਖਤਮ" #: src/atomix-ui.xml.h:3 msgid "Pause the running game" msgstr "ਚੱਲ ਰਹੀ ਖੇਡ ਰੋਕੋ" #: src/atomix-ui.xml.h:4 msgid "Reset level" msgstr "ਪੱਧਰ ਮੁੜ-ਸੈੱਟ" #: src/atomix-ui.xml.h:5 msgid "Restores start situation" msgstr "ਸ਼ੁਰੂਆਤੀ ਹਾਲਤ ਮੁੜ-ਪ੍ਰਾਪਤ" #: src/atomix-ui.xml.h:6 msgid "Set preferences" msgstr "ਪਸੰਦ ਦਿਓ" #: src/atomix-ui.xml.h:7 msgid "Skip _level" msgstr "ਛੱਡਣ ਪੱਧਰ(_l)" #: src/atomix-ui.xml.h:8 msgid "Skip the current level" msgstr "ਮੌਜੂਦਾ ਪੱਧਰ ਅਧੂਰਾ ਛੱਡੋ" #: src/atomix-ui.xml.h:9 msgid "Start a new game" msgstr "ਇੱਕ ਨਵੀਂ ਖੇਡ ਸ਼ੁਰੂ" #: src/atomix-ui.xml.h:10 msgid "Undo the last move" msgstr "ਆਖਰੀ ਚਾਲ ਵਾਪਿਸ" #: src/atomix-ui.xml.h:11 msgid "View highscores" msgstr "ਵੱਧ ਤੋਂ ਵੱਧ ਸਕੋਰ ਵੇਖਾਓ" #: src/atomix-ui.xml.h:12 msgid "_Continue game" msgstr "ਖੇਡ ਜਾਰੀ ਰੱਖੋ(_C)" #: src/atomix-ui.xml.h:13 msgid "_Edit" msgstr "ਸੋਧ(_E)" #: src/atomix-ui.xml.h:14 msgid "_End Game" msgstr "ਖੇਡ ਖਤਮ(_E)" #: src/atomix-ui.xml.h:15 msgid "_Game" msgstr "ਖੇਡ(_G)" #: src/atomix-ui.xml.h:16 msgid "_Help" msgstr "ਸਹਾਇਤਾ(_H)" #: src/atomix-ui.xml.h:17 msgid "_New Game" msgstr "ਨਵੀਂ ਖੇਡ(_N)" #: src/atomix-ui.xml.h:18 msgid "_Pause game" msgstr "ਖੇਡ ਵਿਰਾਮ(_P)" #: src/atomix-ui.xml.h:19 msgid "_Preferences ..." msgstr "ਮੇਰੀ ਪਸੰਦ(_P) ..." #: src/atomix-ui.xml.h:20 msgid "_Scores ..." msgstr "ਸਕੋਰ(_S) ..." #: src/atomix-ui.xml.h:21 msgid "_Undo move" msgstr "ਆਖਰੀ ਚਾਲ ਵਾਪਿਸ(_U)" #: src/level-manager.c:174 msgid "Couldn't find level sequence description." msgstr "ਪੱਧਰ ਕਰਮ ਵੇਰਵਾ ਖੋਜਿਆ ਨਹੀਂ ਜਾ ਸਕਿਆ ਹੈ।" #: src/level-manager.c:188 msgid "No level found." msgstr "ਕੋਈ ਪੱਧਰ ਨਹੀਂ ਲੱਭਿਆ ਹੈ।" #: src/level-manager.c:284 #, c-format msgid "Found level '%s' in: %s" msgstr "ਪੱਧਰ '%s' ਇਸ 'ਚ ਲੱਭਿਆ ਹੈ: %s" #: src/main.c:127 msgid "You have not achieved any scores yet. Play a little before coming back!" msgstr "ਤੁਸੀਂ ਹਾਲੇ ਤੱਕ ਕੋਈ ਸਕੋਰ ਨਹੀਂ ਬਣਾਇਆ ਹੈ। ਆਉਣ ਤੋਂ ਪਹਿਲਾਂ ਕੁਝ ਖੇਡੋ ਵੀ!" #: src/main.c:174 msgid "A puzzle game about atoms and molecules" msgstr "ਪਰਮਾਣੂ ਅਤੇ ਅਣੂ ਬਾਰੇ ਇੱਕ ਪਹੇਲੀ ਹੈ" #: src/main.c:178 msgid "translator-credits" msgstr "ਅਨੁਵਾਦ ਮਾਣ" #: src/main.c:492 atomix.desktop.in.h:1 msgid "Atomix" msgstr "ਐਟਮਿਕਸ" #: src/main.c:503 msgid "Congratulations! You have finished all Atomix levels." msgstr "ਮੁਬਾਰਕਾਂ! ਤੁਸੀਂ ਐਟਮਿਕਸ ਦੇ ਸਭ ਪੱਧਰ ਖਤਮ ਕਰ ਦਿੱਤੇ ਹਨ।" #: src/main.c:513 msgid "Couldn't find at least one level." msgstr "ਘੱਟੋ-ਘੱਟ ਇੱਕ ਪੱਧਰ ਪ੍ਰਾਪਤ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਿਆ ਹੈ!" #: src/main.c:518 msgid "Do you want to finish the game?" msgstr "ਕੀ ਤੁਸੀਂ ਖੇਡ ਖਤਮ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ?" #. create statistics frame #: src/main.c:727 msgid "Statistics" msgstr "ਅੰਕੜੇ" #: src/main.c:733 msgid "Level:" msgstr "ਪੱਧਰ:" #: src/main.c:734 msgid "Molecule:" msgstr "ਅਣੂ:" #: src/main.c:735 msgid "Score:" msgstr "ਸਕੋਰ:" #: src/main.c:736 msgid "Time:" msgstr "ਸਮਾਂ:" #: src/main.c:776 #, c-format msgid "Couldn't find file: %s" msgstr "ਫਾਇਲ ਨਹੀਂ ਲੱਭਿਆ: %s" #: src/theme-manager.c:135 msgid "No themes found." msgstr "ਕੋਈ ਸਰੂਪ ਨਹੀਂ ਲੱਭਿਆ ਹੈ।" #: src/theme-manager.c:193 #, c-format msgid "Found theme '%s' in: %s" msgstr "ਸਰੂਪ '%s' ਲੱਭਿਆ ਹੈ: %s" #: atomix.desktop.in.h:2 msgid "Molecule puzzle game" msgstr "ਅਣੂ ਪਹੇਲੀ ਖੇਡ" atomix-2.14.0/po/pl.po0000644000175000017500000001141107763421517011423 00000000000000# Copyright (C) 2001-2002 Free Software Foundation, Inc. # -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- # Aktualną wersję tego pliku możesz odnaleźć w repozytorium cvs.gnome.pl # (:pserver:anonymous@cvs.gnome.pl:/home/cvs, puste hasło) # Jeśli masz jakiekolwiek uwagi odnoszące się do tłumaczenia lub chcesz # pomóc w jego rozwijaniu i pielęgnowaniu, napisz do nas na adres: # translators@gnome.pl # -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- msgid "" msgstr "" "Project-Id-Version: atomix\n" "POT-Creation-Date: 2003-12-03 18:47+0100\n" "PO-Revision-Date: 2002-02-28 17:40+0100\n" "Last-Translator: GNOME PL Team \n" "Language-Team: Polish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: src/atomix-ui.xml.in.h:1 msgid "Continue paused game" msgstr "Kontynuuje wstrzymaną grę" #: src/atomix-ui.xml.in.h:2 msgid "E_xit" msgstr "Za_kończ" #: src/atomix-ui.xml.in.h:3 msgid "End a game" msgstr "Kończy grę" #: src/atomix-ui.xml.in.h:4 msgid "Exit game" msgstr "Wychodzi z gry" #: src/atomix-ui.xml.in.h:5 msgid "Pause the running game" msgstr "Wstrzymuje uruchomioną grę" #: src/atomix-ui.xml.in.h:6 msgid "Reset level" msgstr "Przywróć poziom" #: src/atomix-ui.xml.in.h:7 msgid "Restores start situation" msgstr "Powraca do sytuacji startowej" #: src/atomix-ui.xml.in.h:8 msgid "Set preferences" msgstr "Ustawia preferencje" #: src/atomix-ui.xml.in.h:9 msgid "Skip _level" msgstr "Po_miń poziom" #: src/atomix-ui.xml.in.h:10 msgid "Skip the current level" msgstr "Pomija bieżący poziom" #: src/atomix-ui.xml.in.h:11 msgid "Start a new game" msgstr "Rozpoczyna nową grę" #: src/atomix-ui.xml.in.h:12 msgid "Undo the last move" msgstr "Cofa ostatni ruch" #: src/atomix-ui.xml.in.h:13 msgid "View game credits" msgstr "Wyświetla informacje o twórcach gry" #: src/atomix-ui.xml.in.h:14 msgid "View highscores" msgstr "Wyświetla najlepsze wyniki" #: src/atomix-ui.xml.in.h:15 msgid "_About" msgstr "_Informacje" #: src/atomix-ui.xml.in.h:16 msgid "_Continue game" msgstr "K_ontynuuj grę" #: src/atomix-ui.xml.in.h:17 msgid "_Edit" msgstr "_Edycja" #: src/atomix-ui.xml.in.h:18 msgid "_End Game" msgstr "_Zakończ grę" #: src/atomix-ui.xml.in.h:19 msgid "_Game" msgstr "_Gra" #: src/atomix-ui.xml.in.h:20 msgid "_Help" msgstr "Pomo_c" #: src/atomix-ui.xml.in.h:21 msgid "_New Game" msgstr "_Nowa gra" #: src/atomix-ui.xml.in.h:22 msgid "_Pause game" msgstr "Ws_trzymaj grę" #: src/atomix-ui.xml.in.h:23 msgid "_Preferences ..." msgstr "_Preferencje..." #: src/atomix-ui.xml.in.h:24 msgid "_Scores ..." msgstr "_Wyniki ..." #: src/atomix-ui.xml.in.h:25 msgid "_Undo move" msgstr "_Cofnij ruch" #: src/level-manager.c:171 msgid "Couldn't find level sequence description." msgstr "Nie można odnaleźć sekwencji opisu poziomu." #: src/level-manager.c:185 msgid "No level found." msgstr "Nie odnaleziono poziomu." #: src/level-manager.c:286 #, c-format msgid "Found level '%s' in: %s" msgstr "Odnaleziono poziom \"%s\" w: %s" #: src/main.c:118 src/main.c:444 atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: src/main.c:145 msgid "Copyright (C) 1999-2002 Jens Finke" msgstr "Copyright (C) 1999-2002 Jens Finke" #: src/main.c:146 msgid "A mind game about atoms and molecules." msgstr "Gra logiczna o atomach i cząsteczkach." #: src/main.c:456 msgid "Congratulations! You have finished all Atomix levels." msgstr "Gratulacje! Udało ci się zakończyć wszystkie poziomy gry Atomix." #: src/main.c:467 msgid "Couldn't find at least one level." msgstr "Nie można odnaleźć przynajmniej jednego poziomu." #: src/main.c:472 msgid "Do you want to finish the game?" msgstr "Czy na pewno chcesz zakończyć grę?" #: src/main.c:591 src/main.c:597 src/main.c:602 #, c-format msgid "Couldn't create directory: %s" msgstr "Nie można stworzyć katalogu: %s" #. create statistics frame #: src/main.c:701 msgid "Statistics" msgstr "Statystyki" #: src/main.c:707 msgid "Level:" msgstr "Poziom:" #: src/main.c:708 msgid "Molecule:" msgstr "Cząsteczka:" #: src/main.c:709 msgid "Score:" msgstr "Wynik:" #: src/main.c:710 msgid "Time:" msgstr "Czas:" #: src/main.c:750 #, c-format msgid "Couldn't find file: %s" msgstr "Nie można odnaleźć pliku: %s" #: src/theme-manager.c:141 msgid "No themes found." msgstr "Nie odnaleziono motywów." #: src/theme-manager.c:205 #, c-format msgid "Found theme '%s' in: %s" msgstr "Odnaleziono motyw \"%s\" w: %s" #: atomix.desktop.in.h:2 msgid "Molecule mind game" msgstr "Gra logiczna w układanie cząsteczek" #~ msgid "Atomix Splash" #~ msgstr "Ekran powitalny Atomiksa" #~ msgid "Game Paused" #~ msgstr "Gra wstrzymana" #~ msgid "Game Over" #~ msgstr "Koniec gry" #~ msgid "Atomix - Molecule Mind Game" #~ msgstr "Atomix - Gra logiczna w układanie cząsteczek" atomix-2.14.0/po/pt.po0000644000175000017500000002745707763421517011454 00000000000000# atomix's Portuguese Translation # Copyright (C) 2001 Free Software Foundation, Inc. # Duarte Loreto , 2001, 2002 # msgid "" msgstr "" "Project-Id-Version: 2.0\n" "POT-Creation-Date: 2003-12-03 18:47+0100\n" "PO-Revision-Date: 2002-03-02 01:40+0000\n" "Last-Translator: Duarte Loreto \n" "Language-Team: Portuguese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: src/atomix-ui.xml.in.h:1 msgid "Continue paused game" msgstr "_Continuar jogo parado" #: src/atomix-ui.xml.in.h:2 msgid "E_xit" msgstr "Sai_r" #: src/atomix-ui.xml.in.h:3 msgid "End a game" msgstr "Terminar o jogo" #: src/atomix-ui.xml.in.h:4 msgid "Exit game" msgstr "Sair do jogo" #: src/atomix-ui.xml.in.h:5 msgid "Pause the running game" msgstr "Parar o jogo em execução" #: src/atomix-ui.xml.in.h:6 msgid "Reset level" msgstr "Reset nível" #: src/atomix-ui.xml.in.h:7 msgid "Restores start situation" msgstr "Repõe a situação inicial" #: src/atomix-ui.xml.in.h:8 msgid "Set preferences" msgstr "Definir preferências" #: src/atomix-ui.xml.in.h:9 msgid "Skip _level" msgstr "Saltar níve_l" #: src/atomix-ui.xml.in.h:10 msgid "Skip the current level" msgstr "Saltar o nível actual" #: src/atomix-ui.xml.in.h:11 msgid "Start a new game" msgstr "Começar um jogo novo" #: src/atomix-ui.xml.in.h:12 msgid "Undo the last move" msgstr "Desfazer a última jogada" #: src/atomix-ui.xml.in.h:13 msgid "View game credits" msgstr "Ver os créditos do jogo" #: src/atomix-ui.xml.in.h:14 msgid "View highscores" msgstr "Ver melhores pontuações" #: src/atomix-ui.xml.in.h:15 msgid "_About" msgstr "_Sobre" #: src/atomix-ui.xml.in.h:16 msgid "_Continue game" msgstr "_Continuar jogo" #: src/atomix-ui.xml.in.h:17 msgid "_Edit" msgstr "_Editar" #: src/atomix-ui.xml.in.h:18 msgid "_End Game" msgstr "T_erminar Jogo" #: src/atomix-ui.xml.in.h:19 msgid "_Game" msgstr "_Jogo" #: src/atomix-ui.xml.in.h:20 msgid "_Help" msgstr "_Ajuda" #: src/atomix-ui.xml.in.h:21 msgid "_New Game" msgstr "_Novo Jogo" #: src/atomix-ui.xml.in.h:22 msgid "_Pause game" msgstr "_Parar jogo" #: src/atomix-ui.xml.in.h:23 msgid "_Preferences ..." msgstr "_Preferências..." #: src/atomix-ui.xml.in.h:24 msgid "_Scores ..." msgstr "_Pontuações..." #: src/atomix-ui.xml.in.h:25 msgid "_Undo move" msgstr "_Desfazer jogada" #: src/level-manager.c:171 msgid "Couldn't find level sequence description." msgstr "Incapaz de encontrar descrição de sequência de níveis." #: src/level-manager.c:185 msgid "No level found." msgstr "Nenhum nível encontrado." #: src/level-manager.c:286 #, c-format msgid "Found level '%s' in: %s" msgstr "Encontrado o nível '%s' em: %s" #: src/main.c:118 src/main.c:444 atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: src/main.c:145 msgid "Copyright (C) 1999-2002 Jens Finke" msgstr "Copyright (C) 1999-2002 Jens Finke" #: src/main.c:146 msgid "A mind game about atoms and molecules." msgstr "Um jogo de estratégia sobre átomos e moléculas." #: src/main.c:456 msgid "Congratulations! You have finished all Atomix levels." msgstr "Parabéns! Terminou todos os níveis do Atomix." #: src/main.c:467 msgid "Couldn't find at least one level." msgstr "Incapaz de encontrar pelo menos um nível." #: src/main.c:472 msgid "Do you want to finish the game?" msgstr "Deseja terminar este jogo?" #: src/main.c:591 src/main.c:597 src/main.c:602 #, c-format msgid "Couldn't create directory: %s" msgstr "Incapaz de criar directório: %s" #. create statistics frame #: src/main.c:701 msgid "Statistics" msgstr "Estatísticas" #: src/main.c:707 msgid "Level:" msgstr "Nível:" #: src/main.c:708 msgid "Molecule:" msgstr "Molécula:" #: src/main.c:709 msgid "Score:" msgstr "Pontuação:" #: src/main.c:710 msgid "Time:" msgstr "Tempo:" #: src/main.c:750 #, c-format msgid "Couldn't find file: %s" msgstr "Incapaz de encontrar o ficheiro: %s" #: src/theme-manager.c:141 msgid "No themes found." msgstr "Nenhum tema encontrado." #: src/theme-manager.c:205 #, c-format msgid "Found theme '%s' in: %s" msgstr "Encontrado o tema '%s' em: %s" #: atomix.desktop.in.h:2 msgid "Molecule mind game" msgstr "Jogo de estratégia molecular" #~ msgid "Atomix Splash" #~ msgstr "Logotipo Atomix" #~ msgid "Game Paused" #~ msgstr "Jogo em Pausa" #~ msgid "Game Over" #~ msgstr "Jogo Terminado" #~ msgid "Atomix - Molecule Mind Game" #~ msgstr "Atomix - Jogo de Pensamento Molecular" #~ msgid "Do you really want to clear the grid?" #~ msgstr "Deseja mesmo limpar a grelha?" #~ msgid "" #~ "There does already a theme with this name exist.\n" #~ "So does the dir name." #~ msgstr "" #~ "Já existe um tema com este nome.\n" #~ "E também um nome de directório." #~ msgid "" #~ "There does already a theme with\n" #~ "this name exist." #~ msgstr "" #~ "Já existe um tema com este\n" #~ "nome." #~ msgid "" #~ "There does already a directory\n" #~ "with this name exist." #~ msgstr "" #~ "Já existe um directório com\n" #~ "este nome." #~ msgid "_New File" #~ msgstr "_Novo Ficheiro" #~ msgid "Grid" #~ msgstr "Grelha" #~ msgid "Grid On/Off" #~ msgstr "Grelha Ligada/Desligada" #~ msgid "Theme Window" #~ msgstr "Janela de Tema" #~ msgid "_Clear Grid" #~ msgstr "_Limpar Grelha" #~ msgid "_Resize Grid" #~ msgstr "_Redimensionar Grelha" #~ msgid "_Delete Theme" #~ msgstr "_Apagar Tema" #~ msgid "Atomixed manual" #~ msgstr "Manual Atomixed" #~ msgid "_Level" #~ msgstr "Níve_l" #~ msgid "_Theme" #~ msgstr "_Tema" #~ msgid "New" #~ msgstr "Novo" #~ msgid "New File" #~ msgstr "Novo Ficheiro" #~ msgid "Open" #~ msgstr "Abrir" #~ msgid "Open File" #~ msgstr "Abrir Ficheiro" #~ msgid "Save" #~ msgstr "Gravar" #~ msgid "Save File" #~ msgstr "Gravar Ficheiro" #~ msgid "Theme Wnd" #~ msgstr "Janela Tema" #~ msgid "No." #~ msgstr "Nº" #~ msgid "Level" #~ msgstr "Nível" #~ msgid "Goal" #~ msgstr "Objectivo" #~ msgid "Name:" #~ msgstr "Nome:" #~ msgid "Themename:" #~ msgstr "Nome Tema:" #~ msgid "Filename:" #~ msgstr "Nome Ficheiro:" #~ msgid "Bonuslevel" #~ msgstr "Bónus Nível" #~ msgid "Time" #~ msgstr "Tempo" #~ msgid "Minutes: " #~ msgstr "Minutos: " #~ msgid "Seconds:" #~ msgstr "Segundos:" #~ msgid "Properties" #~ msgstr "Propriedades" #~ msgid "Leveleditor" #~ msgstr "Editor Níveis" #~ msgid "Images" #~ msgstr "Imagens" #~ msgid "Connections" #~ msgstr "Ligações" #~ msgid "Moveables" #~ msgstr "Movíveis" #~ msgid "Obstacles" #~ msgstr "Obstáculos" #~ msgid "Directoryname:" #~ msgstr "Nome Directório:" #~ msgid "Background Color:" #~ msgstr "Cor Fundo:" #~ msgid "Selector Image:" #~ msgstr "Selector de Imagens:" #~ msgid "Browse ..." #~ msgstr "Pesquisar..." #~ msgid "Animation Step:" #~ msgstr "Incremento de Animação:" #~ msgid "Tile Height:" #~ msgstr "Altura do Mosaico:" #~ msgid "Tile Width:" #~ msgstr "Largura do Mosaico:" #~ msgid "Themeeditor" #~ msgstr "Editor de Tema" #~ msgid "Atom Preview" #~ msgstr "Prever Atom" #~ msgid "Mouse functions" #~ msgstr "Funções do rato" #~ msgid "Clear" #~ msgstr "Limpar" #~ msgid "Set" #~ msgstr "Definir" #~ msgid "Move" #~ msgstr "Mover" #~ msgid "Resize Grid" #~ msgstr "Redimensionar Grelha" #~ msgid "Current Values" #~ msgstr "Valores Actuais" #~ msgid "Rows:" #~ msgstr "Linhas:" #~ msgid "Columns:" #~ msgstr "Colunas:" #~ msgid "New Values" #~ msgstr "Novos Valores" #~ msgid "New Level" #~ msgstr "Novo Nível" #~ msgid "Levelname:" #~ msgstr "Nome Nível:" #~ msgid "Playfield Size" #~ msgstr "Tamanho do Campo" #~ msgid "Goal Size" #~ msgstr "Tamanho do Objectivo" #~ msgid "(C) 1999-2001 Jens Finke" #~ msgstr "(C) 1999-2001 Jens Finke" #~ msgid "Atomixed is the Level-/Themeeditor for the mind game Atomix." #~ msgstr "Atomixed é o editor de Níveis/Temas para o jogo de mente Atomix." #~ msgid "Change level name" #~ msgstr "Modificar nome de nível" #~ msgid "" #~ "There is already a level with the same name. Please choose another\n" #~ "name for this level." #~ msgstr "" #~ "Já existe um nível com o mesmo nome. Seleccione outro nome\n" #~ "para este nível." #~ msgid "Current Name:" #~ msgstr "Nome Actual:" #~ msgid "Add Image" #~ msgstr "Adicionar Imagem" #~ msgid "Text:" #~ msgstr "Texto:" #~ msgid "Change ID" #~ msgstr "Modificar ID" #~ msgid "Current ID:" #~ msgstr "ID Actual:" #~ msgid "New ID:" #~ msgstr "Novo ID:" #~ msgid "New Theme" #~ msgstr "Novo Tema" #~ msgid "No tile to clear here." #~ msgstr "Nenhum mosaico a apagar aqui." #~ msgid "No tile to move here." #~ msgstr "Nenhum mosaico a mover aqui." #~ msgid "Copy Goal" #~ msgstr "Copiar Objectivo" #~ msgid "Copy the goal into the playfield." #~ msgstr "Copiar o objectivo para o campo de jogo." #~ msgid "Clear Grid" #~ msgstr "Limpar Grelha" #~ msgid "Clears the whole grid." #~ msgstr "Limpa a grelha toda." #~ msgid "Add an image to the list." #~ msgstr "Adicionar imagem à lista." #~ msgid "Delete Image" #~ msgstr "Apagar Imagem" #~ msgid "Delete selected image(s)." #~ msgstr "Apagar imagem(ns) seleccionada(s)." #~ msgid "Change the ID of the image." #~ msgstr "Modificar ID da imagem." #~ msgid "Press Ctrl+N for a new Game" #~ msgstr "Prima Ctrl+N para novo Jogo" #~ msgid "Couldn't find the Atomix manual!" #~ msgstr "Incapaz de encontrar o manual do Atomix!" #~ msgid "Atomix manual" #~ msgstr "Manual Atomix" #~ msgid "" #~ "Level not found.\n" #~ "Sorry, but the game ends here.\n" #~ "\n" #~ "(Please make sure you have *.atomix\n" #~ "files either in /share/atomix/levels\n" #~ "or ~/.atomix/levels.)" #~ msgstr "" #~ "Nível não encontrado.\n" #~ "Desculpe, mas o jogo termina aqui.\n" #~ "\n" #~ "(Certifique-se de que tem os ficheiros\n" #~ "*.atomix ou em /share/atomix/levels\n" #~ "ou em ~/.atomix/levels.)" #~ msgid "Information" #~ msgstr "Informação" #~ msgid "Yet another mind game." #~ msgstr "Mais um jogo de mente." #~ msgid "Atomix Next Level" #~ msgstr "Próximo Nível Atomix" #~ msgid "Congratulations! You have successfully finished this level." #~ msgstr "Parabéns! Terminou este nível com sucesso." #~ msgid "Remaining Time:" #~ msgstr "Tempo Remanescente:" #~ msgid "Are you ready for the next level?" #~ msgstr "Está preparado para o próximo nível?" #~ msgid "Atomix End" #~ msgstr "Fim do Atomix" #~ msgid "Do you want to play again?" #~ msgstr "Deseja jogar novamente?" #~ msgid "Constraints" #~ msgstr "Restrições" #~ msgid "enable score and time limit" #~ msgstr "activar limite de tempo e pontuação" #~ msgid "General" #~ msgstr "Genérico" #~ msgid "Keyboard (return and cursor keys)" #~ msgstr "Teclado (return e teclas de cursor)" #~ msgid "Mouse" #~ msgstr "Rato" #~ msgid "Mouse Properties" #~ msgstr "Propriedades do Rato" #~ msgid "hide mouse cursor during dragging" #~ msgstr "esconder cursor rato durante arrasto" #~ msgid "enable lazy dragging" #~ msgstr "activar arrasto preguiçoso" #~ msgid "Sensitivity:" #~ msgstr "Sensibilidade:" #~ msgid "high" #~ msgstr "alta" #~ msgid "low" #~ msgstr "baixa" #~ msgid "Control" #~ msgstr "Controlo" #~ msgid "Do you really want to exit the program?" #~ msgstr "Deseja mesmo sair da aplicação?" #~ msgid "" #~ "Your time is up! This costs you 10% of your score. \n" #~ "More luck next time. \n" #~ "\n" #~ "Do you want to retry?" #~ msgstr "" #~ "Terminou o seu tempo! Isto custa-lhe 10% da sua pontuação. \n" #~ "Mais sorte da próxima vez. \n" #~ "\n" #~ "Deseja tentar novamente?" #~ msgid "" #~ "Sorry your time is up! But this was only\n" #~ "a bonus level so go further now." #~ msgstr "" #~ "terminou o seu tempo! Mas isto era apenas\n" #~ "um nível de bonús pelo que continue." #~ msgid "Undo last move. This costs you 5% of your score." #~ msgstr "Desfazer última jogada. Isto custa-lhe 5% da sua pontuação." #~ msgid "No more undo levels." #~ msgstr "Não há mais níves de desfazer." #~ msgid "This is the last level. You can't skip any further." #~ msgstr "Este é o último nível. Não pode saltar mais." atomix-2.14.0/po/pt_BR.po0000644000175000017500000001434010357260126012010 00000000000000# Brazilian Portuguese translation of Atomix. # This file is distributed under the same license as the Atomix package. # Copyright (C) 2005 Free Software Foundation, Inc. # Estêvão Samuel Procópio , 2005. # Guilherme de S. Pastore , 2005. # msgid "" msgstr "" "Project-Id-Version: atomix 1.1.2\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-01-05 16:05-0200\n" "PO-Revision-Date: 2006-01-05 16:06-0200\n" "Last-Translator: Guilherme de S. Pastore \n" "Language-Team: Brazilian Portuguese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../level/aceticacid.atomix.xml.h:1 msgid "Acetic Acid" msgstr "Ácido Acético" #: ../level/acetone.atomix.xml.h:1 msgid "Acetone" msgstr "Acetona" #: ../level/butanol.atomix.xml.h:1 msgid "Butanol" msgstr "Butanol" #: ../level/cyclobutane.atomix.xml.h:1 msgid "Cyclobutane" msgstr "Ciclobutano" #: ../level/dimethylether.atomix.xml.h:1 msgid "Dimethyl Ether" msgstr "Éter Dimetílico" #: ../level/ethanal.atomix.xml.h:1 msgid "Ethanal" msgstr "Etanal" #: ../level/ethane.atomix.xml.h:1 msgid "Ethane" msgstr "Etano" #: ../level/ethanol.atomix.xml.h:1 msgid "Ethanol" msgstr "Etanol" #: ../level/ethylene.atomix.xml.h:1 msgid "Ethylene" msgstr "Eteno" #: ../level/glycerin.atomix.xml.h:1 msgid "Glycerin" msgstr "Glicerina" #: ../level/lactic-acid.atomix.xml.h:1 msgid "Lactic Acid" msgstr "Ácido Lático" #: ../level/methanal.atomix.xml.h:1 msgid "Methanal" msgstr "Metanal" #: ../level/methane.atomix.xml.h:1 msgid "Methane" msgstr "Metano" #: ../level/methanol.atomix.xml.h:1 msgid "Methanol" msgstr "Metanol" #: ../level/propanal.atomix.xml.h:1 msgid "Propanal" msgstr "Propanal" #: ../level/propylene.atomix.xml.h:1 msgid "Propylene" msgstr "Propileno" #: ../level/pyran.atomix.xml.h:1 msgid "Pyran" msgstr "Pirano" #: ../level/transbutylen.atomix.xml.h:1 msgid "Trans Butylen" msgstr "Trans-butileno" #: ../level/water.atomix.xml.h:1 msgid "Water" msgstr "Água" #: ../src/atomix-ui.xml.h:1 msgid "Continue paused game" msgstr "_Continuar o jogo pausado" #: ../src/atomix-ui.xml.h:2 msgid "End a game" msgstr "Terminar um jogo" #: ../src/atomix-ui.xml.h:3 msgid "Pause the running game" msgstr "Pausar o jogo atual" #: ../src/atomix-ui.xml.h:4 msgid "Reset level" msgstr "Reiniciar o nível" #: ../src/atomix-ui.xml.h:5 msgid "Restores start situation" msgstr "Restaura a situação inicial" #: ../src/atomix-ui.xml.h:6 msgid "Set preferences" msgstr "Ajustar as preferências" #: ../src/atomix-ui.xml.h:7 msgid "Skip _level" msgstr "Pular _nível" #: ../src/atomix-ui.xml.h:8 msgid "Skip the current level" msgstr "Pular o nível atual" #: ../src/atomix-ui.xml.h:9 msgid "Start a new game" msgstr "Iniciar um novo jogo" #: ../src/atomix-ui.xml.h:10 msgid "Undo the last move" msgstr "Desfazer o último movimento" #: ../src/atomix-ui.xml.h:11 msgid "View highscores" msgstr "Ver os recordes de pontuação" #: ../src/atomix-ui.xml.h:12 msgid "_Continue game" msgstr "_Continuar jogo" #: ../src/atomix-ui.xml.h:13 msgid "_End Game" msgstr "_Terminar Jogo" #: ../src/atomix-ui.xml.h:14 msgid "_Game" msgstr "_Jogo" #. submenu name="Edit" _label="_Edit"> #. #. #. #. \n" "Guilherme de S. Pastore " #: ../src/main.c:488 ../atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: ../src/main.c:499 msgid "Congratulations! You have finished all Atomix levels." msgstr "Parabéns! Você completou todos os níveis do Atomix." #: ../src/main.c:509 msgid "Couldn't find at least one level." msgstr "Não foi possível encontrar pelo menos um nível." #: ../src/main.c:514 msgid "Do you want to finish the game?" msgstr "Você deseja terminar o jogo?" #. create statistics frame #: ../src/main.c:728 msgid "Statistics" msgstr "Estatísticas" #: ../src/main.c:734 msgid "Level:" msgstr "Nível:" #: ../src/main.c:735 msgid "Molecule:" msgstr "Molécula:" #: ../src/main.c:736 msgid "Formula:" msgstr "Fórmula:" #: ../src/main.c:737 msgid "Score:" msgstr "Pontuação:" #: ../src/main.c:738 msgid "Time:" msgstr "Tempo:" #: ../src/main.c:778 #, c-format msgid "Couldn't find file: %s" msgstr "Não foi possível encontrar o arquivo %s" #: ../src/theme-manager.c:135 msgid "No themes found." msgstr "Nenhum tema encontrado." #: ../src/theme-manager.c:193 #, c-format msgid "Found theme '%s' in: %s" msgstr "Encontrado o tema '%s' em %s" #: ../atomix.desktop.in.h:2 msgid "Molecule puzzle game" msgstr "Quebra-cabeça com moléculas" #~ msgid "E_xit" #~ msgstr "_Sair" #~ msgid "Exit game" #~ msgstr "Sair do jogo" #~ msgid "View game credits" #~ msgstr "Ver os créditos do jogo" #~ msgid "_About" #~ msgstr "_Sobre" #~ msgid "_Edit" #~ msgstr "_Editar" #~ msgid "Copyright (C) 1999-2002 Jens Finke" #~ msgstr "Copyright (C) 1999-2002 Jens Finke" #~ msgid "Formaldehyd" #~ msgstr "Formaldeído" #~ msgid "Couldn't create directory: %s" #~ msgstr "Incapaz de criar diretório: %s" #~ msgid "Atomix Splash" #~ msgstr "Splash do Atomix" atomix-2.14.0/po/ru.po0000644000175000017500000001416710364752225011443 00000000000000# Copyright (C) 2001-2002 Free Software Foundation, Inc. # Valek Filippov , 2001-2002, 2006. # msgid "" msgstr "" "Project-Id-Version: Atomix\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-01-22 13:44+0100\n" "PO-Revision-Date: 2006-01-22 21:32+0300\n" "Last-Translator: Valek Filippov \n" "Language-Team: Russian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8-bit\n" #: ../level/aceticacid.atomix.xml.h:1 msgid "Acetic Acid" msgstr "Уксусная кислота" #: ../level/acetone.atomix.xml.h:1 msgid "Acetone" msgstr "Ацетон" #: ../level/butanol.atomix.xml.h:1 msgid "Butanol" msgstr "Бутанол" #: ../level/cyclobutane.atomix.xml.h:1 msgid "Cyclobutane" msgstr "Циклобутан" #: ../level/dimethylether.atomix.xml.h:1 msgid "Dimethyl Ether" msgstr "Диметиловый эфир" #: ../level/ethanal.atomix.xml.h:1 msgid "Ethanal" msgstr "Ацетальдегид" #: ../level/ethane.atomix.xml.h:1 msgid "Ethane" msgstr "Этан" #: ../level/ethanol.atomix.xml.h:1 msgid "Ethanol" msgstr "Этанол" #: ../level/ethylene.atomix.xml.h:1 msgid "Ethylene" msgstr "Этилен" #: ../level/glycerin.atomix.xml.h:1 msgid "Glycerin" msgstr "Глицерин" #: ../level/lactic-acid.atomix.xml.h:1 msgid "Lactic Acid" msgstr "Молочная кислота" #: ../level/methanal.atomix.xml.h:1 msgid "Methanal" msgstr "Формальдегид" #: ../level/methane.atomix.xml.h:1 msgid "Methane" msgstr "Метан" #: ../level/methanol.atomix.xml.h:1 msgid "Methanol" msgstr "Метанол" #: ../level/propanal.atomix.xml.h:1 msgid "Propanal" msgstr "Пропаналь" #: ../level/propylene.atomix.xml.h:1 msgid "Propylene" msgstr "Пропилен" #: ../level/pyran.atomix.xml.h:1 msgid "Pyran" msgstr "Пиран" #: ../level/transbutylen.atomix.xml.h:1 msgid "Trans Butylen" msgstr "транс-Бутилен" #: ../level/water.atomix.xml.h:1 msgid "Water" msgstr "Вода" #: ../src/atomix-ui.xml.h:1 msgid "Continue paused game" msgstr "Продолжить игру" #: ../src/atomix-ui.xml.h:2 msgid "End a game" msgstr "Закончить игру" #: ../src/atomix-ui.xml.h:3 msgid "Pause the running game" msgstr "Приостановить запущенную игру" #: ../src/atomix-ui.xml.h:4 msgid "Reset level" msgstr "Сбросить уровень" #: ../src/atomix-ui.xml.h:5 msgid "Restores start situation" msgstr "Восстановить исходную ситуацию" #: ../src/atomix-ui.xml.h:6 msgid "Set preferences" msgstr "Настроить" #: ../src/atomix-ui.xml.h:7 msgid "Skip _level" msgstr "Пропустить уровень" #: ../src/atomix-ui.xml.h:8 msgid "Skip the current level" msgstr "Пропустить текущий уровень" #: ../src/atomix-ui.xml.h:9 msgid "Start a new game" msgstr "Запустить новую игру" #: ../src/atomix-ui.xml.h:10 msgid "Undo the last move" msgstr "Отменить последний ход" #: ../src/atomix-ui.xml.h:11 msgid "View highscores" msgstr "Просмотр лучших результатов" #: ../src/atomix-ui.xml.h:12 msgid "_Continue game" msgstr "Продолжить игру" #: ../src/atomix-ui.xml.h:13 msgid "_End Game" msgstr "Завершить игру" #: ../src/atomix-ui.xml.h:14 msgid "_Game" msgstr "Игра" #. submenu name="Edit" _label="_Edit"> #. #. #. #. " #: ../src/main.c:488 ../atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: ../src/main.c:499 msgid "Congratulations! You have finished all Atomix levels." msgstr "Поздравляю! Вы успешно завершили все уровни Atiomix." #: ../src/main.c:509 msgid "Couldn't find at least one level." msgstr "Не найден ни один уровень." #: ../src/main.c:514 msgid "Do you want to finish the game?" msgstr "Хотите завершить игру?" #. create statistics frame #: ../src/main.c:728 msgid "Statistics" msgstr "Статистика" #: ../src/main.c:734 msgid "Level:" msgstr "Уровень:" #: ../src/main.c:735 msgid "Molecule:" msgstr "Молекула:" #: ../src/main.c:736 msgid "Formula:" msgstr "Формула:" #: ../src/main.c:737 msgid "Score:" msgstr "Очки:" #: ../src/main.c:738 msgid "Time:" msgstr "Время:" #: ../src/main.c:778 #, c-format msgid "Couldn't find file: %s" msgstr "Не удалось найти файл: %s" #: ../src/theme-manager.c:135 msgid "No themes found." msgstr "Темы не найдены." #: ../src/theme-manager.c:193 #, c-format msgid "Found theme '%s' in: %s" msgstr "Найдена тема \"%s\" в: %s" #: ../atomix.desktop.in.h:2 msgid "Molecule puzzle game" msgstr "Головоломка с молекулами" atomix-2.14.0/po/sk.po0000644000175000017500000001270210342142001011400 00000000000000# atomix Slovak translation. # Copyright (C) 2001, 2002, 2005 Free Software Foundation, Inc. # Stanislav Višňovský , 2001,2002. # Marcel Telka , 2005. # # $Id: sk.po,v 1.9 2005/11/26 20:22:25 marcel Exp $ # msgid "" msgstr "" "Project-Id-Version: atomix\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2005-11-26 20:39+0100\n" "PO-Revision-Date: 2005-11-26 21:21+0100\n" "Last-Translator: Marcel Telka \n" "Language-Team: Slovak \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../level/aceticacid.atomix.xml.h:1 msgid "Acetic Acid" msgstr "Kyselina octová" #: ../level/acetone.atomix.xml.h:1 msgid "Acetone" msgstr "Acetón" #: ../level/butanol.atomix.xml.h:1 msgid "Butanol" msgstr "Butanol" #: ../level/cyclobutane.atomix.xml.h:1 msgid "Cyclobutane" msgstr "Cyklobután" #: ../level/dimethylether.atomix.xml.h:1 msgid "Dimethyl Ether" msgstr "Dimetyléter" #: ../level/ethanal.atomix.xml.h:1 msgid "Ethanal" msgstr "Etanal" #: ../level/ethane.atomix.xml.h:1 msgid "Ethane" msgstr "Etán" #: ../level/ethanol.atomix.xml.h:1 msgid "Ethanol" msgstr "Etanol" #: ../level/ethylene.atomix.xml.h:1 msgid "Ethylene" msgstr "Etylén" #: ../level/glycerin.atomix.xml.h:1 msgid "Glycerin" msgstr "Glycerín" #: ../level/lactic-acid.atomix.xml.h:1 msgid "Lactic Acid" msgstr "Kyselina mliečna" #: ../level/methanal.atomix.xml.h:1 msgid "Methanal" msgstr "Formaldehyd" #: ../level/methane.atomix.xml.h:1 msgid "Methane" msgstr "Metán" #: ../level/methanol.atomix.xml.h:1 msgid "Methanol" msgstr "Metanol" #: ../level/propanal.atomix.xml.h:1 msgid "Propanal" msgstr "Propanal" #: ../level/propylene.atomix.xml.h:1 msgid "Propylene" msgstr "Propylén" #: ../level/pyran.atomix.xml.h:1 msgid "Pyran" msgstr "Pyran" #: ../level/transbutylen.atomix.xml.h:1 msgid "Trans Butylen" msgstr "Butén" #: ../level/water.atomix.xml.h:1 msgid "Water" msgstr "Voda" #: ../src/atomix-ui.xml.h:1 msgid "Continue paused game" msgstr "Pokračovať v pozastavenej hre" #: ../src/atomix-ui.xml.h:2 msgid "End a game" msgstr "Ukončí hru" #: ../src/atomix-ui.xml.h:3 msgid "Pause the running game" msgstr "Pozastaví bežiacu hru" #: ../src/atomix-ui.xml.h:4 msgid "Reset level" msgstr "Reštart úrovne" #: ../src/atomix-ui.xml.h:5 msgid "Restores start situation" msgstr "Obnoví pôvodnú situáciu" #: ../src/atomix-ui.xml.h:6 msgid "Set preferences" msgstr "Nastaviť" #: ../src/atomix-ui.xml.h:7 msgid "Skip _level" msgstr "_Preskočiť úroveň" #: ../src/atomix-ui.xml.h:8 msgid "Skip the current level" msgstr "Preskočí aktuálnu úroveň" #: ../src/atomix-ui.xml.h:9 msgid "Start a new game" msgstr "Spustí novú hru" #: ../src/atomix-ui.xml.h:10 msgid "Undo the last move" msgstr "Vráti posledný ťah" #: ../src/atomix-ui.xml.h:11 msgid "View highscores" msgstr "Zobraziť najvyššie skóre" #: ../src/atomix-ui.xml.h:12 msgid "_Continue game" msgstr "_Pokračovať v hre" #: ../src/atomix-ui.xml.h:13 msgid "_Edit" msgstr "_Upraviť" #: ../src/atomix-ui.xml.h:14 msgid "_End Game" msgstr "_Ukončiť hru" #: ../src/atomix-ui.xml.h:15 msgid "_Game" msgstr "_Hra" #: ../src/atomix-ui.xml.h:16 msgid "_Help" msgstr "_Pomocník" #: ../src/atomix-ui.xml.h:17 msgid "_New Game" msgstr "_Nová hra" #: ../src/atomix-ui.xml.h:18 msgid "_Pause game" msgstr "_Zastaviť hru" #: ../src/atomix-ui.xml.h:19 msgid "_Preferences ..." msgstr "_Nastavenia..." #: ../src/atomix-ui.xml.h:20 msgid "_Scores ..." msgstr "_Skóre..." #: ../src/atomix-ui.xml.h:21 msgid "_Undo move" msgstr "_Späť ťah" #: ../src/level-manager.c:174 msgid "Couldn't find level sequence description." msgstr "Nepodarilo sa nájsť popis sekvencie úrovní." #: ../src/level-manager.c:188 msgid "No level found." msgstr "Úroveň nenájdená." #: ../src/level-manager.c:284 #, c-format msgid "Found level '%s' in: %s" msgstr "Nájdená úroveň '%s' v: %s" #: ../src/main.c:127 msgid "You have not achieved any scores yet. Play a little before coming back!" msgstr "" "Nedosiahli ste zatiaľ žiadne skóre. Trochu si zahrajte predtým, ako sa sem " "vrátite!" #: ../src/main.c:174 msgid "A puzzle game about atoms and molecules" msgstr "Skladačková hra s atómami a molekulami" #: ../src/main.c:178 msgid "translator-credits" msgstr "Marcel Telka " #: ../src/main.c:492 ../atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: ../src/main.c:503 msgid "Congratulations! You have finished all Atomix levels." msgstr "Blahoželáme! Dokončili ste všetky úrovne Atomix." #: ../src/main.c:513 msgid "Couldn't find at least one level." msgstr "Nepodarilo sa nájsť ani jednu úroveň." #: ../src/main.c:518 msgid "Do you want to finish the game?" msgstr "Chcete skončiť hru?" #. create statistics frame #: ../src/main.c:727 msgid "Statistics" msgstr "Štatistika" #: ../src/main.c:733 msgid "Level:" msgstr "Úroveň:" #: ../src/main.c:734 msgid "Molecule:" msgstr "Molekula:" #: ../src/main.c:735 msgid "Score:" msgstr "Skóre:" #: ../src/main.c:736 msgid "Time:" msgstr "Čas:" #: ../src/main.c:776 #, c-format msgid "Couldn't find file: %s" msgstr "Nepodarilo sa nájsť súbor: %s" #: ../src/theme-manager.c:135 msgid "No themes found." msgstr "Nenájdené žiadne témy." #: ../src/theme-manager.c:193 #, c-format msgid "Found theme '%s' in: %s" msgstr "Nájdená téma '%s' v:%s" #: ../atomix.desktop.in.h:2 msgid "Molecule puzzle game" msgstr "Skladačková hra s molekulami" atomix-2.14.0/po/sl.po0000644000175000017500000001052707763421517011435 00000000000000# A Slovenian translation file for ATOMIX. # Copyright (C) 2002 # This file is distributed under the same license as the PACKAGE package. # Nejc Novak , 2002. # msgid "" msgstr "" "Project-Id-Version: atomix\n" "POT-Creation-Date: 2003-12-03 18:47+0100\n" "PO-Revision-Date: 2002-03-13 14:43+0100\n" "Last-Translator: Nejc Novak \n" "Language-Team: Slovenian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: src/atomix-ui.xml.in.h:1 msgid "Continue paused game" msgstr "Nadaljuj prekinjeno igro" #: src/atomix-ui.xml.in.h:2 msgid "E_xit" msgstr "Iz_hod" #: src/atomix-ui.xml.in.h:3 msgid "End a game" msgstr "Končaj igro" #: src/atomix-ui.xml.in.h:4 msgid "Exit game" msgstr "Zapusti igro" #: src/atomix-ui.xml.in.h:5 msgid "Pause the running game" msgstr "Prekini tekočo igro" #: src/atomix-ui.xml.in.h:6 msgid "Reset level" msgstr "Ponovno začni stopnjo" #: src/atomix-ui.xml.in.h:7 msgid "Restores start situation" msgstr "Vrne na začetni položaj" #: src/atomix-ui.xml.in.h:8 msgid "Set preferences" msgstr "Nastavi nastavitve" #: src/atomix-ui.xml.in.h:9 msgid "Skip _level" msgstr "Preskoči stopnjo" #: src/atomix-ui.xml.in.h:10 msgid "Skip the current level" msgstr "Preskoči trenutno stopnjo" #: src/atomix-ui.xml.in.h:11 msgid "Start a new game" msgstr "Začni novo igro" #: src/atomix-ui.xml.in.h:12 msgid "Undo the last move" msgstr "Razveljavi zadnjo potezo" #: src/atomix-ui.xml.in.h:13 msgid "View game credits" msgstr "O igri" #: src/atomix-ui.xml.in.h:14 msgid "View highscores" msgstr "Najboljši razultati" #: src/atomix-ui.xml.in.h:15 msgid "_About" msgstr "O igri" #: src/atomix-ui.xml.in.h:16 msgid "_Continue game" msgstr "Nadaljuj igro" #: src/atomix-ui.xml.in.h:17 msgid "_Edit" msgstr "Ur_edi" #: src/atomix-ui.xml.in.h:18 msgid "_End Game" msgstr "Končaj ig_ro" #: src/atomix-ui.xml.in.h:19 msgid "_Game" msgstr "I_gra" #: src/atomix-ui.xml.in.h:20 msgid "_Help" msgstr "Pomo_č" #: src/atomix-ui.xml.in.h:21 msgid "_New Game" msgstr "_Nova igra" #: src/atomix-ui.xml.in.h:22 msgid "_Pause game" msgstr "Zaustavi igro" #: src/atomix-ui.xml.in.h:23 msgid "_Preferences ..." msgstr "Nasta_vitve ..." #: src/atomix-ui.xml.in.h:24 msgid "_Scores ..." msgstr "Re_zultati ..." #: src/atomix-ui.xml.in.h:25 msgid "_Undo move" msgstr "Razveljavi po_tezo" #: src/level-manager.c:171 msgid "Couldn't find level sequence description." msgstr "Ne najdem opisa hitrosti stopnje." #: src/level-manager.c:185 msgid "No level found." msgstr "Ni najdenih stopenj." #: src/level-manager.c:286 #, c-format msgid "Found level '%s' in: %s" msgstr "Našel stopnjo '%s' v: %s" #: src/main.c:118 src/main.c:444 atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: src/main.c:145 msgid "Copyright (C) 1999-2002 Jens Finke" msgstr "Pravice pridržane (C) 1999-2002 Jens Finke" #: src/main.c:146 msgid "A mind game about atoms and molecules." msgstr "Miselna igra o atomih in molekulah" #: src/main.c:456 msgid "Congratulations! You have finished all Atomix levels." msgstr "Čestitam! Končali ste vse stopnje Atomixa" #: src/main.c:467 msgid "Couldn't find at least one level." msgstr "Ne najdem niti ene stopnje." #: src/main.c:472 msgid "Do you want to finish the game?" msgstr "Želite končati igro?" #: src/main.c:591 src/main.c:597 src/main.c:602 #, c-format msgid "Couldn't create directory: %s" msgstr "Ne morem ustvariti imenika: %s" #. create statistics frame #: src/main.c:701 msgid "Statistics" msgstr "Statistike" #: src/main.c:707 msgid "Level:" msgstr "Stopnja:" #: src/main.c:708 msgid "Molecule:" msgstr "Molekula:" #: src/main.c:709 msgid "Score:" msgstr "Rezultat:" #: src/main.c:710 msgid "Time:" msgstr "Čas:" #: src/main.c:750 #, c-format msgid "Couldn't find file: %s" msgstr "Ne najdem datoteke: %s" #: src/theme-manager.c:141 msgid "No themes found." msgstr "Nisem našel tem" #: src/theme-manager.c:205 #, c-format msgid "Found theme '%s' in: %s" msgstr "Našel temo '%s' v: %s" #: atomix.desktop.in.h:2 msgid "Molecule mind game" msgstr "Miselna molekulska igra" #~ msgid "Game Paused" #~ msgstr "Igra zaustavljena" #~ msgid "Game Over" #~ msgstr "Konec igre" #~ msgid "Atomix - Molecule Mind Game" #~ msgstr "Atomix - Molekulska miselna igra" #~ msgid "Atomix Splash" #~ msgstr "Atomix Splash" atomix-2.14.0/po/sq.po0000644000175000017500000001314410367441131011424 00000000000000# Përkthimi i mesazheve të atomix në shqip # This file is distributed under the same license as the atomix package. # Copyright (C) 2003, 2004, 2005, 2006, Free Software Foundation, Inc. # # Laurent Dhima , 2003, 2004, 2005, 2006. msgid "" msgstr "" "Project-Id-Version: atomix HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-01-30 13:40+0100\n" "PO-Revision-Date: 2006-01-30 17:42+0100\n" "Last-Translator: Laurent Dhima \n" "Language-Team: Albanian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../level/aceticacid.atomix.xml.h:1 msgid "Acetic Acid" msgstr "Acid Acetik" #: ../level/acetone.atomix.xml.h:1 msgid "Acetone" msgstr "Acetone" #: ../level/butanol.atomix.xml.h:1 msgid "Butanol" msgstr "Butanol" #: ../level/cyclobutane.atomix.xml.h:1 msgid "Cyclobutane" msgstr "Cyclobutane" #: ../level/dimethylether.atomix.xml.h:1 msgid "Dimethyl Ether" msgstr "Dimethyl Ether" #: ../level/ethanal.atomix.xml.h:1 msgid "Ethanal" msgstr "Ethanal" #: ../level/ethane.atomix.xml.h:1 msgid "Ethane" msgstr "Ethane" #: ../level/ethanol.atomix.xml.h:1 msgid "Ethanol" msgstr "Ethanol" #: ../level/ethylene.atomix.xml.h:1 msgid "Ethylene" msgstr "Etilene" #: ../level/glycerin.atomix.xml.h:1 msgid "Glycerin" msgstr "Glicerinë" #: ../level/lactic-acid.atomix.xml.h:1 msgid "Lactic Acid" msgstr "Acid Lactic" #: ../level/methanal.atomix.xml.h:1 msgid "Methanal" msgstr "Metanal" #: ../level/methane.atomix.xml.h:1 msgid "Methane" msgstr "Metane" #: ../level/methanol.atomix.xml.h:1 msgid "Methanol" msgstr "Metanol" #: ../level/propanal.atomix.xml.h:1 msgid "Propanal" msgstr "Propanal" #: ../level/propylene.atomix.xml.h:1 msgid "Propylene" msgstr "Propilene" #: ../level/pyran.atomix.xml.h:1 msgid "Pyran" msgstr "Pyran" #: ../level/transbutylen.atomix.xml.h:1 msgid "Trans Butylen" msgstr "Trans Butilen" #: ../level/water.atomix.xml.h:1 msgid "Water" msgstr "Ujë" #: ../src/atomix-ui.xml.h:1 msgid "Continue paused game" msgstr "Vazhdo lojën e ndërprerë" #: ../src/atomix-ui.xml.h:2 msgid "End a game" msgstr "Përfundo lojën" #: ../src/atomix-ui.xml.h:3 msgid "Pause the running game" msgstr "Pusho lojën aktuale" #: ../src/atomix-ui.xml.h:4 msgid "Reset level" msgstr "Rinis nivelin" #: ../src/atomix-ui.xml.h:5 msgid "Restores start situation" msgstr "Rivendos gjëndjen fillestare" #: ../src/atomix-ui.xml.h:6 msgid "Set preferences" msgstr "Përcakto preferimet" #: ../src/atomix-ui.xml.h:7 msgid "Skip _level" msgstr "Kapërce _nivelin" #: ../src/atomix-ui.xml.h:8 msgid "Skip the current level" msgstr "Kapërcen nivelin aktual" #: ../src/atomix-ui.xml.h:9 msgid "Start a new game" msgstr "Fillo një lojë të re" #: ../src/atomix-ui.xml.h:10 msgid "Undo the last move" msgstr "Anullo lëvizjen e fundit" #: ../src/atomix-ui.xml.h:11 msgid "View highscores" msgstr "Shiko pikët më të larta" #: ../src/atomix-ui.xml.h:12 msgid "_Continue game" msgstr "_Vazhdo lojën" #: ../src/atomix-ui.xml.h:13 msgid "_End Game" msgstr "_Përfundo lojën" #: ../src/atomix-ui.xml.h:14 msgid "_Game" msgstr "_Loja" #. submenu name="Edit" _label="_Edit"> #. #. #. #. " #: ../src/main.c:488 ../atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: ../src/main.c:499 msgid "Congratulations! You have finished all Atomix levels." msgstr "Ju lumtë! Sapo përfunduat të gjithë nivelet e Atomix." #: ../src/main.c:509 msgid "Couldn't find at least one level." msgstr "Nuk arrij të gjej të paktën një nivel." #: ../src/main.c:514 msgid "Do you want to finish the game?" msgstr "Dëshironi të përfundoni lojën?" #. create statistics frame #: ../src/main.c:728 msgid "Statistics" msgstr "Statistikat" #: ../src/main.c:734 msgid "Level:" msgstr "Niveli:" #: ../src/main.c:735 msgid "Molecule:" msgstr "Molekula:" #: ../src/main.c:736 msgid "Formula:" msgstr "Formula:" #: ../src/main.c:737 msgid "Score:" msgstr "Pikë:" #: ../src/main.c:738 msgid "Time:" msgstr "Kohëzgjatja:" #: ../src/main.c:778 #, c-format msgid "Couldn't find file: %s" msgstr "E pamundur gjetja e file: %s" #: ../src/theme-manager.c:135 msgid "No themes found." msgstr "Nuk u gjet asnjë temë." #: ../src/theme-manager.c:193 #, c-format msgid "Found theme '%s' in: %s" msgstr "U gjet tema '%s' në: %s" #: ../atomix.desktop.in.h:2 msgid "Molecule puzzle game" msgstr "Loja e molekulave" atomix-2.14.0/po/sr.po0000644000175000017500000001575610361324176011443 00000000000000# Serbian translation of atomix # Courtesy of Prevod.org team (http://www.prevod.org/) -- 2003, 2004, 2005, 2006 # # This file is distributed under the same license as the atomix package. # # Maintainer: Александар Урошевић # msgid "" msgstr "" "Project-Id-Version: atomix\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-01-10 21:50+0100\n" "PO-Revision-Date: 2006-01-11 10:33+0100\n" "Last-Translator: Слободан Д. Средојевић \n" "Language-Team: Serbian (sr) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../level/aceticacid.atomix.xml.h:1 msgid "Acetic Acid" msgstr "Ацетна киселина" #: ../level/acetone.atomix.xml.h:1 msgid "Acetone" msgstr "Ацетин" #: ../level/butanol.atomix.xml.h:1 msgid "Butanol" msgstr "Бутанол" #: ../level/cyclobutane.atomix.xml.h:1 msgid "Cyclobutane" msgstr "Циклобутан" #: ../level/dimethylether.atomix.xml.h:1 msgid "Dimethyl Ether" msgstr "Диметил Етер" #: ../level/ethanal.atomix.xml.h:1 msgid "Ethanal" msgstr "Етанал" #: ../level/ethane.atomix.xml.h:1 msgid "Ethane" msgstr "Етан" #: ../level/ethanol.atomix.xml.h:1 msgid "Ethanol" msgstr "Етанол" #: ../level/ethylene.atomix.xml.h:1 msgid "Ethylene" msgstr "Еталин" #: ../level/glycerin.atomix.xml.h:1 msgid "Glycerin" msgstr "Глицерин" #: ../level/lactic-acid.atomix.xml.h:1 msgid "Lactic Acid" msgstr "Млечна киселина" #: ../level/methanal.atomix.xml.h:1 msgid "Methanal" msgstr "Метанал" #: ../level/methane.atomix.xml.h:1 msgid "Methane" msgstr "Метан" #: ../level/methanol.atomix.xml.h:1 msgid "Methanol" msgstr "Метанол" #: ../level/propanal.atomix.xml.h:1 msgid "Propanal" msgstr "Пропанол" #: ../level/propylene.atomix.xml.h:1 msgid "Propylene" msgstr "Пропилен" #: ../level/pyran.atomix.xml.h:1 msgid "Pyran" msgstr "Пиран" #: ../level/transbutylen.atomix.xml.h:1 msgid "Trans Butylen" msgstr "Транс-бутелин" #: ../level/water.atomix.xml.h:1 msgid "Water" msgstr "Вода" #: ../src/atomix-ui.xml.h:1 msgid "Continue paused game" msgstr "Наставак паузиране игре" #: ../src/atomix-ui.xml.h:2 msgid "End a game" msgstr "Крај игре" #: ../src/atomix-ui.xml.h:3 msgid "Pause the running game" msgstr "Паузирање покренуте игре" #: ../src/atomix-ui.xml.h:4 msgid "Reset level" msgstr "Поништи ниво" #: ../src/atomix-ui.xml.h:5 msgid "Restores start situation" msgstr "Повраћај почетне позиције" #: ../src/atomix-ui.xml.h:6 msgid "Set preferences" msgstr "Обави подешавања" #: ../src/atomix-ui.xml.h:7 msgid "Skip _level" msgstr "Прескочи _ниво" #: ../src/atomix-ui.xml.h:8 msgid "Skip the current level" msgstr "Прескочи тренутни ниво" #: ../src/atomix-ui.xml.h:9 msgid "Start a new game" msgstr "Покрени нову игру" #: ../src/atomix-ui.xml.h:10 msgid "Undo the last move" msgstr "Опозови последњи потез" #: ../src/atomix-ui.xml.h:11 msgid "View highscores" msgstr "Табела најбољих играча" #: ../src/atomix-ui.xml.h:12 msgid "_Continue game" msgstr "_Настави игру" #: ../src/atomix-ui.xml.h:13 msgid "_End Game" msgstr "_Крај игре" #: ../src/atomix-ui.xml.h:14 msgid "_Game" msgstr "_Игра" #. submenu name="Edit" _label="_Edit"> #. #. #. #. \n" "\n" "http://prevod.org — преводи на српски језик" #: ../src/main.c:488 ../atomix.desktop.in.h:1 msgid "Atomix" msgstr "Атомикс" #: ../src/main.c:499 msgid "Congratulations! You have finished all Atomix levels." msgstr "Честитам! Прешли сте све нивое Атомикс-а." #: ../src/main.c:509 msgid "Couldn't find at least one level." msgstr "Не могу пронаћи макар један ниво." #: ../src/main.c:514 msgid "Do you want to finish the game?" msgstr "Желите ли да завршите игру?" #. create statistics frame #: ../src/main.c:728 msgid "Statistics" msgstr "Статистика" #: ../src/main.c:734 msgid "Level:" msgstr "Ниво:" #: ../src/main.c:735 msgid "Molecule:" msgstr "Молекул:" #: ../src/main.c:736 msgid "Formula:" msgstr "Формула:" #: ../src/main.c:737 msgid "Score:" msgstr "Резултат:" #: ../src/main.c:738 msgid "Time:" msgstr "Време:" #: ../src/main.c:778 #, c-format msgid "Couldn't find file: %s" msgstr "Не могу пронаћи датотеку: %s" #: ../src/theme-manager.c:135 msgid "No themes found." msgstr "Тема није пронађена." #: ../src/theme-manager.c:193 #, c-format msgid "Found theme '%s' in: %s" msgstr "Пронађена тема „%s‟ у: %s" #: ../atomix.desktop.in.h:2 msgid "Molecule puzzle game" msgstr "Логичка слагалица са молекулима" #~ msgid "E_xit" #~ msgstr "И_злаз" #~ msgid "Exit game" #~ msgstr "Напуштање игре" #~ msgid "View game credits" #~ msgstr "Погледај захвале" #~ msgid "_About" #~ msgstr "_О игри" #~ msgid "_Edit" #~ msgstr "_Уреди" #~ msgid "Copyright (C) 1999-2002 Jens Finke" #~ msgstr "Ауторска права (C) 1999-2002 Jens Finke" #~ msgid "Couldn't create directory: %s" #~ msgstr "Не могу креирати директоријум: %s" atomix-2.14.0/po/sr@Latn.po0000644000175000017500000001405010361324176012344 00000000000000# Serbian translation of atomix # Courtesy of Prevod.org team (http://www.prevod.org/) -- 2003, 2004, 2005, 2006 # # This file is distributed under the same license as the atomix package. # # Maintainer: Aleksandar Urošević # msgid "" msgstr "" "Project-Id-Version: atomix\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-01-10 21:50+0100\n" "PO-Revision-Date: 2006-01-11 10:33+0100\n" "Last-Translator: Slobodan D. Sredojević \n" "Language-Team: Serbian (sr) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../level/aceticacid.atomix.xml.h:1 msgid "Acetic Acid" msgstr "Acetna kiselina" #: ../level/acetone.atomix.xml.h:1 msgid "Acetone" msgstr "Acetin" #: ../level/butanol.atomix.xml.h:1 msgid "Butanol" msgstr "Butanol" #: ../level/cyclobutane.atomix.xml.h:1 msgid "Cyclobutane" msgstr "Ciklobutan" #: ../level/dimethylether.atomix.xml.h:1 msgid "Dimethyl Ether" msgstr "Dimetil Eter" #: ../level/ethanal.atomix.xml.h:1 msgid "Ethanal" msgstr "Etanal" #: ../level/ethane.atomix.xml.h:1 msgid "Ethane" msgstr "Etan" #: ../level/ethanol.atomix.xml.h:1 msgid "Ethanol" msgstr "Etanol" #: ../level/ethylene.atomix.xml.h:1 msgid "Ethylene" msgstr "Etalin" #: ../level/glycerin.atomix.xml.h:1 msgid "Glycerin" msgstr "Glicerin" #: ../level/lactic-acid.atomix.xml.h:1 msgid "Lactic Acid" msgstr "Mlečna kiselina" #: ../level/methanal.atomix.xml.h:1 msgid "Methanal" msgstr "Metanal" #: ../level/methane.atomix.xml.h:1 msgid "Methane" msgstr "Metan" #: ../level/methanol.atomix.xml.h:1 msgid "Methanol" msgstr "Metanol" #: ../level/propanal.atomix.xml.h:1 msgid "Propanal" msgstr "Propanol" #: ../level/propylene.atomix.xml.h:1 msgid "Propylene" msgstr "Propilen" #: ../level/pyran.atomix.xml.h:1 msgid "Pyran" msgstr "Piran" #: ../level/transbutylen.atomix.xml.h:1 msgid "Trans Butylen" msgstr "Trans-butelin" #: ../level/water.atomix.xml.h:1 msgid "Water" msgstr "Voda" #: ../src/atomix-ui.xml.h:1 msgid "Continue paused game" msgstr "Nastavak pauzirane igre" #: ../src/atomix-ui.xml.h:2 msgid "End a game" msgstr "Kraj igre" #: ../src/atomix-ui.xml.h:3 msgid "Pause the running game" msgstr "Pauziranje pokrenute igre" #: ../src/atomix-ui.xml.h:4 msgid "Reset level" msgstr "Poništi nivo" #: ../src/atomix-ui.xml.h:5 msgid "Restores start situation" msgstr "Povraćaj početne pozicije" #: ../src/atomix-ui.xml.h:6 msgid "Set preferences" msgstr "Obavi podešavanja" #: ../src/atomix-ui.xml.h:7 msgid "Skip _level" msgstr "Preskoči _nivo" #: ../src/atomix-ui.xml.h:8 msgid "Skip the current level" msgstr "Preskoči trenutni nivo" #: ../src/atomix-ui.xml.h:9 msgid "Start a new game" msgstr "Pokreni novu igru" #: ../src/atomix-ui.xml.h:10 msgid "Undo the last move" msgstr "Opozovi poslednji potez" #: ../src/atomix-ui.xml.h:11 msgid "View highscores" msgstr "Tabela najboljih igrača" #: ../src/atomix-ui.xml.h:12 msgid "_Continue game" msgstr "_Nastavi igru" #: ../src/atomix-ui.xml.h:13 msgid "_End Game" msgstr "_Kraj igre" #: ../src/atomix-ui.xml.h:14 msgid "_Game" msgstr "_Igra" #. submenu name="Edit" _label="_Edit"> #. #. #. #. \n" "\n" "http://prevod.org — prevodi na srpski jezik" #: ../src/main.c:488 ../atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomiks" #: ../src/main.c:499 msgid "Congratulations! You have finished all Atomix levels." msgstr "Čestitam! Prešli ste sve nivoe Atomiks-a." #: ../src/main.c:509 msgid "Couldn't find at least one level." msgstr "Ne mogu pronaći makar jedan nivo." #: ../src/main.c:514 msgid "Do you want to finish the game?" msgstr "Želite li da završite igru?" #. create statistics frame #: ../src/main.c:728 msgid "Statistics" msgstr "Statistika" #: ../src/main.c:734 msgid "Level:" msgstr "Nivo:" #: ../src/main.c:735 msgid "Molecule:" msgstr "Molekul:" #: ../src/main.c:736 msgid "Formula:" msgstr "Formula:" #: ../src/main.c:737 msgid "Score:" msgstr "Rezultat:" #: ../src/main.c:738 msgid "Time:" msgstr "Vreme:" #: ../src/main.c:778 #, c-format msgid "Couldn't find file: %s" msgstr "Ne mogu pronaći datoteku: %s" #: ../src/theme-manager.c:135 msgid "No themes found." msgstr "Tema nije pronađena." #: ../src/theme-manager.c:193 #, c-format msgid "Found theme '%s' in: %s" msgstr "Pronađena tema „%s‟ u: %s" #: ../atomix.desktop.in.h:2 msgid "Molecule puzzle game" msgstr "Logička slagalica sa molekulima" #~ msgid "E_xit" #~ msgstr "I_zlaz" #~ msgid "Exit game" #~ msgstr "Napuštanje igre" #~ msgid "View game credits" #~ msgstr "Pogledaj zahvale" #~ msgid "_About" #~ msgstr "_O igri" #~ msgid "_Edit" #~ msgstr "_Uredi" #~ msgid "Copyright (C) 1999-2002 Jens Finke" #~ msgstr "Autorska prava (C) 1999-2002 Jens Finke" #~ msgid "Couldn't create directory: %s" #~ msgstr "Ne mogu kreirati direktorijum: %s" atomix-2.14.0/po/sv.po0000644000175000017500000003413310335720671011436 00000000000000# Swedish messages for atomix. # Copyright (C) 2001, 2002, 2005 Free Software Foundation, Inc. # Christian Rose , 2001, 2002, 2005. # # $Id: sv.po,v 1.15 2005/11/13 20:27:37 menthos Exp $ # msgid "" msgstr "" "Project-Id-Version: atomix\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2005-11-13 21:24+0100\n" "PO-Revision-Date: 2005-11-13 21:24+0100\n" "Last-Translator: Christian Rose \n" "Language-Team: Swedish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../level/aceticacid.atomix.xml.h:1 msgid "Acetic Acid" msgstr "Ättiksyra" #: ../level/acetone.atomix.xml.h:1 msgid "Acetone" msgstr "Aceton" # FIXME: # http://bugzilla.gnome.org/show_bug.cgi?id=321365 # #: ../level/buthanol.atomix.xml.h:1 msgid "Buthanol" msgstr "Butanol" # FIXME: # http://bugzilla.gnome.org/show_bug.cgi?id=321367 # #: ../level/cyclo-buthane.atomix.xml.h:1 msgid "Cyclo-Buthane" msgstr "Cyclobutan" #: ../level/dimethylether.atomix.xml.h:1 msgid "Dimethyl Ether" msgstr "Dimetyleter" # FIXME: # http://bugzilla.gnome.org/show_bug.cgi?id=321369 # #: ../level/ethan.atomix.xml.h:1 msgid "Ethan" msgstr "Etan" #: ../level/ethanal.atomix.xml.h:1 msgid "Ethanal" msgstr "Etanal" #: ../level/ethanol.atomix.xml.h:1 msgid "Ethanol" msgstr "Etanol" #: ../level/ethylene.atomix.xml.h:1 msgid "Ethylene" msgstr "Eten" #: ../level/glycerin.atomix.xml.h:1 msgid "Glycerin" msgstr "Glycerin" #: ../level/lactic-acid.atomix.xml.h:1 msgid "Lactic Acid" msgstr "Mjölksyra" #: ../level/methanal.atomix.xml.h:1 msgid "Methanal" msgstr "Metanal" #: ../level/methane.atomix.xml.h:1 msgid "Methane" msgstr "Metan" #: ../level/methanol.atomix.xml.h:1 msgid "Methanol" msgstr "Metanol" # Osäker. #: ../level/propanal.atomix.xml.h:1 msgid "Propanal" msgstr "Propanal" # FIXME: # http://bugzilla.gnome.org/show_bug.cgi?id=321371 # #: ../level/propylen.atomix.xml.h:1 msgid "Propylen" msgstr "Propylen" # Osäker. #: ../level/pyran.atomix.xml.h:1 msgid "Pyran" msgstr "Pyran" # Osäker. #: ../level/transbutylen.atomix.xml.h:1 msgid "Trans Butylen" msgstr "Transbutylen" #: ../level/water.atomix.xml.h:1 msgid "Water" msgstr "Vatten" #: ../src/atomix-ui.xml.h:1 msgid "Continue paused game" msgstr "Fortsätt pausat spel" #: ../src/atomix-ui.xml.h:2 msgid "End a game" msgstr "Avsluta ett spel" #: ../src/atomix-ui.xml.h:3 msgid "Pause the running game" msgstr "Gör paus i aktuellt spel" #: ../src/atomix-ui.xml.h:4 msgid "Reset level" msgstr "Återställ nivå" #: ../src/atomix-ui.xml.h:5 msgid "Restores start situation" msgstr "Återställer startläget" #: ../src/atomix-ui.xml.h:6 msgid "Set preferences" msgstr "Ställ in inställningar" #: ../src/atomix-ui.xml.h:7 msgid "Skip _level" msgstr "Hoppa över _nivå" #: ../src/atomix-ui.xml.h:8 msgid "Skip the current level" msgstr "Hoppa över aktuell nivå" #: ../src/atomix-ui.xml.h:9 msgid "Start a new game" msgstr "Påbörja ett nytt spel" #: ../src/atomix-ui.xml.h:10 msgid "Undo the last move" msgstr "Ångra det senaste draget" #: ../src/atomix-ui.xml.h:11 msgid "View highscores" msgstr "Visa poängrekord" #: ../src/atomix-ui.xml.h:12 msgid "_Continue game" msgstr "_Fortsätt spel" #: ../src/atomix-ui.xml.h:13 msgid "_End Game" msgstr "_Avsluta spel" #: ../src/atomix-ui.xml.h:14 msgid "_Game" msgstr "_Spel" #. submenu name="Edit" _label="_Edit"> #. #. #. #. /share/atomix/levels\n" #~ "or ~/.atomix/levels.)" #~ msgstr "" #~ "Nivån kunde inte hittas.\n" #~ "Tyvärr, spelet slutar här.\n" #~ "\n" #~ "(Var vänlig och försäkra dig om att\n" #~ "du har *.atomix-filer i antingen\n" #~ "/share/atomix/levels eller\n" #~ "~/.atomix/levels.)" #~ msgid "Information" #~ msgstr "Information" #~ msgid "Yet another mind game." #~ msgstr "Ännu ett minnesspel." #~ msgid "Atomix Next Level" #~ msgstr "Nästa Atomixnivå" #~ msgid "Congratulations! You have successfully finished this level." #~ msgstr "Gratulerar! Du har slutfört denna nivå." #~ msgid "Remaining Time:" #~ msgstr "Återstående tid:" #~ msgid "Are you ready for the next level?" #~ msgstr "Är du redo för nästa nivå?" #~ msgid "Atomix End" #~ msgstr "Atomix-slut" #~ msgid "Do you want to play again?" #~ msgstr "Vill du spela igen?" #~ msgid "Constraints" #~ msgstr "Restriktioner" #~ msgid "enable score and time limit" #~ msgstr "använd poäng- och tidsgräns" #~ msgid "General" #~ msgstr "Allmänt" #~ msgid "Keyboard (return and cursor keys)" #~ msgstr "Tangentbord (enter- och piltangenter)" #~ msgid "Mouse" #~ msgstr "Mus" #~ msgid "Mouse Properties" #~ msgstr "Musegenskaper" #~ msgid "hide mouse cursor during dragging" #~ msgstr "dölj muspekare under flytt" #~ msgid "enable lazy dragging" #~ msgstr "använd slö flyttning" #~ msgid "Sensitivity:" #~ msgstr "Känslighet:" #~ msgid "high" #~ msgstr "hög" #~ msgid "low" #~ msgstr "låg" #~ msgid "Control" #~ msgstr "Kontroll" #~ msgid "Do you really want to exit the program?" #~ msgstr "Vill du verkligen avsluta programmet?" #~ msgid "" #~ "Your time is up! This costs you 10% of your score. \n" #~ "More luck next time. \n" #~ "\n" #~ "Do you want to retry?" #~ msgstr "" #~ "Tiden är slut! Detta kostar dig 10% av din poäng.\n" #~ "Bätte lycka nästa gång.\n" #~ "\n" #~ "Vill du försöka igen?" #~ msgid "" #~ "Sorry your time is up! But this was only\n" #~ "a bonus level so go further now." #~ msgstr "" #~ "Ledsen att din tid är ute! Men detta var\n" #~ "bara en bonusnivå, så fortsätt nu." #~ msgid "Undo last move. This costs you 5% of your score." #~ msgstr "Ångra senaste flytt. Detta kostar dig 5% av din poäng." atomix-2.14.0/po/ta.po0000644000175000017500000001367207763421517011427 00000000000000# Tamil translation of Atomix. # Copyright (C) 2002 # This file is distributed under the same license as the Atomix package. # ElangoSundaram , 2002. # msgid "" msgstr "" "Project-Id-Version: Atomix 1.9.7\n" "POT-Creation-Date: 2003-12-03 18:47+0100\n" "PO-Revision-Date: 2002-11-03 05:31+0100\n" "Last-Translator: Elango Sundaram \n" "Language-Team: Tamil \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: src/atomix-ui.xml.in.h:1 msgid "Continue paused game" msgstr "தடை செய்யப்பட்ட ஆட்டத்தைத் தொடர்க " #: src/atomix-ui.xml.in.h:2 msgid "E_xit" msgstr "_வெளியேறுக" #: src/atomix-ui.xml.in.h:3 msgid "End a game" msgstr "ஆட்டத்தை நிறுத்துக" #: src/atomix-ui.xml.in.h:4 msgid "Exit game" msgstr "ஆட்டத்தை விட்டு வெளியேறுக" #: src/atomix-ui.xml.in.h:5 msgid "Pause the running game" msgstr "விளையாடிக்கொண்டிருக்கும் ஆட்டத்தை தற்கலிகமாக நிறுத்துக" #: src/atomix-ui.xml.in.h:6 msgid "Reset level" msgstr "மட்டத்தை நிலை மீட்டுக" #: src/atomix-ui.xml.in.h:7 msgid "Restores start situation" msgstr "தொடக்க நிலையை நிலை மீட்டு" #: src/atomix-ui.xml.in.h:8 msgid "Set preferences" msgstr "விருப்பங்களை அமை" #: src/atomix-ui.xml.in.h:9 msgid "Skip _level" msgstr "மட்டத்தைத் தவிர்" #: src/atomix-ui.xml.in.h:10 msgid "Skip the current level" msgstr "இந்த மட்டத்தைத் தவிர்" #: src/atomix-ui.xml.in.h:11 msgid "Start a new game" msgstr "புது ஆட்டத்தை ஆரம்பம் செய்க" #: src/atomix-ui.xml.in.h:12 msgid "Undo the last move" msgstr "முந்தைய நகர்த்தலை முன்செயல் நீக்கு" #: src/atomix-ui.xml.in.h:13 msgid "View game credits" msgstr "ஆட்ட புள்ளிகளை பார்க்க" #: src/atomix-ui.xml.in.h:14 msgid "View highscores" msgstr "அதிகமான புள்ளிகளைப் பார்க்க" #: src/atomix-ui.xml.in.h:15 msgid "_About" msgstr "_இதைப்பற்றி" #: src/atomix-ui.xml.in.h:16 msgid "_Continue game" msgstr "ஆட்டத்தைத் _தொடர்க" #: src/atomix-ui.xml.in.h:17 msgid "_Edit" msgstr "_தொகு" #: src/atomix-ui.xml.in.h:18 msgid "_End Game" msgstr "ஆட்டத்தை _நிறுத்துக" #: src/atomix-ui.xml.in.h:19 msgid "_Game" msgstr "_ஆட்டம்" #: src/atomix-ui.xml.in.h:20 msgid "_Help" msgstr "உதவி" #: src/atomix-ui.xml.in.h:21 msgid "_New Game" msgstr "_புது ஆட்டம்" #: src/atomix-ui.xml.in.h:22 msgid "_Pause game" msgstr "" #: src/atomix-ui.xml.in.h:23 msgid "_Preferences ..." msgstr "_விருப்பங்கள்" #: src/atomix-ui.xml.in.h:24 msgid "_Scores ..." msgstr "_புள்ளிகள்" #: src/atomix-ui.xml.in.h:25 msgid "_Undo move" msgstr "நகர்த்தலை முன்செயல் _நீக்கு" #: src/level-manager.c:171 msgid "Couldn't find level sequence description." msgstr "வரிசைமுறை மட்ட விளக்கத்தை காண இயலவில்லை" #: src/level-manager.c:185 msgid "No level found." msgstr "மட்டத்தை காண இயலவில்லை" #: src/level-manager.c:286 #, c-format msgid "Found level '%s' in: %s" msgstr "'%s' இல் மட்டத்தை கண்டுபிடித்தாகி விட்டது: %s" #: src/main.c:118 src/main.c:444 atomix.desktop.in.h:1 msgid "Atomix" msgstr "அட்டாமிக்ச்" #: src/main.c:145 msgid "Copyright (C) 1999-2002 Jens Finke" msgstr "காப்புரிமை 1999-2002" #: src/main.c:146 msgid "A mind game about atoms and molecules." msgstr "அணு மற்றும் மூலக்கூறு பற்றிய மன ஆட்டம்" #: src/main.c:456 msgid "Congratulations! You have finished all Atomix levels." msgstr "பாராட்டுக்கள் ! அட்டாமிக்ச் ஆட்டத்தின் அனைத்து நிலைகளையும் முடித்து விட்டீர்கள் " #: src/main.c:467 msgid "Couldn't find at least one level." msgstr "ஒரு மட்டமாவது இல்லை" #: src/main.c:472 msgid "Do you want to finish the game?" msgstr "ஆட்டத்தை நிறுத்த வேண்டுமா ?" #: src/main.c:591 src/main.c:597 src/main.c:602 #, c-format msgid "Couldn't create directory: %s" msgstr "அடைவை உருவாக்க இயலவில்லை: %s" #. create statistics frame #: src/main.c:701 msgid "Statistics" msgstr "புள்ளியியல்" #: src/main.c:707 msgid "Level:" msgstr "மட்டம்" #: src/main.c:708 msgid "Molecule:" msgstr "மூலக்கூறு" #: src/main.c:709 msgid "Score:" msgstr "புள்ளிகள்" #: src/main.c:710 msgid "Time:" msgstr "நேரம்:" #: src/main.c:750 #, c-format msgid "Couldn't find file: %s" msgstr "கோப்பைக் கண்டுபிடிக்க இயலவில்லை : %s" #: src/theme-manager.c:141 msgid "No themes found." msgstr "கருப்பொருள்களைக் காண இயலவில்லை" #: src/theme-manager.c:205 #, c-format msgid "Found theme '%s' in: %s" msgstr "கருப்பொருள் கிடைத்து விட்டது '%s' இங்கே: %s" #: atomix.desktop.in.h:2 msgid "Molecule mind game" msgstr "மூலக்கூறு மன ஆட்டம்" atomix-2.14.0/po/tr.po0000644000175000017500000001207710036046137011432 00000000000000# Turkish translation of Atomix. # Copyright (C) 2001 Free Software Foundation, Inc. # A.Burak Ilgicioglu , 2001. # Görkem Çetin , 2002. msgid "" msgstr "" "Project-Id-Version: atomix 0.4.3\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2004-04-10 22:33+0300\n" "PO-Revision-Date: 2002-03-02 07:34-0500\n" "Last-Translator: Görkem Çetin \n" "Language-Team: Turkish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" # src/interface.c:35 #: src/atomix-ui.xml.in.h:1 msgid "Continue paused game" msgstr "Oyuna devam et" #: src/atomix-ui.xml.in.h:2 msgid "E_xit" msgstr "Çı_k" #: src/atomix-ui.xml.in.h:3 msgid "End a game" msgstr "Oyunu bitir" #: src/atomix-ui.xml.in.h:4 msgid "Exit game" msgstr "Oyundan çık" #: src/atomix-ui.xml.in.h:5 msgid "Pause the running game" msgstr "Çalışan oyunu duraklat" # editor/interface.c:68 #: src/atomix-ui.xml.in.h:6 msgid "Reset level" msgstr "Seviyeye yeniden başla " #: src/atomix-ui.xml.in.h:7 msgid "Restores start situation" msgstr "Başlangıç durumuna getirir" #: src/atomix-ui.xml.in.h:8 msgid "Set preferences" msgstr "Tercihleri ayarla" # src/interface.c:26 #: src/atomix-ui.xml.in.h:9 msgid "Skip _level" msgstr "Seviyeyi atla" # src/interface.c:26 #: src/atomix-ui.xml.in.h:10 msgid "Skip the current level" msgstr "Şimdi oynanan seviyeyi atla" #: src/atomix-ui.xml.in.h:11 msgid "Start a new game" msgstr "Yeni bir oyuna başla" #: src/atomix-ui.xml.in.h:12 msgid "Undo the last move" msgstr "Son hareketi geri al" #: src/atomix-ui.xml.in.h:13 msgid "View game credits" msgstr "Oyunu programlayanlar" #: src/atomix-ui.xml.in.h:14 msgid "View highscores" msgstr "Yüksek puanlar" #: src/atomix-ui.xml.in.h:15 msgid "_About" msgstr "_Hakkında" # src/interface.c:35 #: src/atomix-ui.xml.in.h:16 msgid "_Continue game" msgstr "_Oyuna devam et" #: src/atomix-ui.xml.in.h:17 msgid "_Edit" msgstr "_Düzenle" #: src/atomix-ui.xml.in.h:18 msgid "_End Game" msgstr "_Oyunu Bitir" # editor/interface.c:461 editor/interface.c:767 #: src/atomix-ui.xml.in.h:19 msgid "_Game" msgstr "_Oyun" #: src/atomix-ui.xml.in.h:20 msgid "_Help" msgstr "_Yardım" # editor/interface.c:2030 #: src/atomix-ui.xml.in.h:21 msgid "_New Game" msgstr "_Yeni Oyun" # src/interface.c:35 #: src/atomix-ui.xml.in.h:22 msgid "_Pause game" msgstr "_Oyunu duraklat" #: src/atomix-ui.xml.in.h:23 msgid "_Preferences ..." msgstr "_Tercihler..." #: src/atomix-ui.xml.in.h:24 msgid "_Scores ..." msgstr "_Yüksek puanlar..." #: src/atomix-ui.xml.in.h:25 msgid "_Undo move" msgstr "Hareketi _geri al" #: src/level-manager.c:171 msgid "Couldn't find level sequence description." msgstr "Seviye sıra açıklaması bulunamadı." # src/main.c:163 #: src/level-manager.c:185 msgid "No level found." msgstr "Seviye bulunamadı." #: src/level-manager.c:286 #, c-format msgid "Found level '%s' in: %s" msgstr "%s seviyesi bulundu: %s" # editor/interface.c:225 #: src/main.c:118 src/main.c:444 atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" # src/interface.c:457 #: src/main.c:145 msgid "Copyright (C) 1999-2002 Jens Finke" msgstr "(C) 1999-2002 Jens Finke" #: src/main.c:146 msgid "A mind game about atoms and molecules." msgstr "İçinde atom ve moleküllerin geçtiği bir zeka oyunu." # src/interface.c:616 #: src/main.c:456 msgid "Congratulations! You have finished all Atomix levels." msgstr "Tebrikler! Tüm Atomix seviyelerini başarıyla bitirdiniz." # editor/callbacks.c:1279 #: src/main.c:467 msgid "Couldn't find at least one level." msgstr "Hiç oyun seviyesi bulunamadı." # src/interface.c:908 #: src/main.c:472 msgid "Do you want to finish the game?" msgstr "Gerçekten bu oyundan çıkmak istiyor musunuz? " # editor/support.c:116 src/support.c:116 #: src/main.c:591 src/main.c:597 src/main.c:602 #, c-format msgid "Couldn't create directory: %s" msgstr "Dizin yaratılamadı: %s" # src/interface.c:259 #. create statistics frame #: src/main.c:701 msgid "Statistics" msgstr "İstatistikler" # src/interface.c:317 #: src/main.c:707 msgid "Level:" msgstr "Seviye:" #: src/main.c:708 msgid "Molecule:" msgstr "Molekül:" # src/interface.c:337 src/interface.c:523 src/interface.c:641 #: src/main.c:709 msgid "Score:" msgstr "Skor:" # src/interface.c:347 #: src/main.c:710 msgid "Time:" msgstr "Zaman:" # editor/support.c:100 editor/support.c:138 src/support.c:100 # src/support.c:138 #: src/main.c:750 #, c-format msgid "Couldn't find file: %s" msgstr "Dosya bulunamadı: %s" #: src/theme-manager.c:141 msgid "No themes found." msgstr "Tema bulunamadı." #: src/theme-manager.c:205 #, c-format msgid "Found theme '%s' in: %s" msgstr "%s teması bulundu: %s" # src/interface.c:459 #: atomix.desktop.in.h:2 msgid "Molecule mind game" msgstr "Molekül oyunu" # src/interface.c:108 #~ msgid "Atomix Splash" #~ msgstr "Atomix Başlangıç Ekranı" # src/board.c:202 #~ msgid "Game Paused" #~ msgstr "Oyun Duraklatıldı" # src/board.c:204 #~ msgid "Game Over" #~ msgstr "Oyun Bitti" #~ msgid "Atomix - Molecule Mind Game" #~ msgstr "Atomix - Moleküler Zeka Oyunu " atomix-2.14.0/po/uk.po0000644000175000017500000001165307763421517011437 00000000000000# Ukrainian translation of Atomix. # Copyright (C) 2001 Free Software Foundation, Inc. # Yuriy Syrota , 2001. # msgid "" msgstr "" "Project-Id-Version: atomix\n" "POT-Creation-Date: 2003-12-03 18:47+0100\n" "PO-Revision-Date: 2002-02-28 09:27+0200\n" "Last-Translator: Yuriy Syrota \n" "Language-Team: Ukrainian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" #: src/atomix-ui.xml.in.h:1 msgid "Continue paused game" msgstr "Продовжити призупинену гру" #: src/atomix-ui.xml.in.h:2 msgid "E_xit" msgstr "Ви_йти" #: src/atomix-ui.xml.in.h:3 msgid "End a game" msgstr "Завершити гру" #: src/atomix-ui.xml.in.h:4 msgid "Exit game" msgstr "Вийти з гри" #: src/atomix-ui.xml.in.h:5 msgid "Pause the running game" msgstr "Призупинити гру" #: src/atomix-ui.xml.in.h:6 msgid "Reset level" msgstr "Скинути рівень" #: src/atomix-ui.xml.in.h:7 msgid "Restores start situation" msgstr "Відновити початкову ситуацію" #: src/atomix-ui.xml.in.h:8 msgid "Set preferences" msgstr "Шалаштувати" #: src/atomix-ui.xml.in.h:9 msgid "Skip _level" msgstr "Пропустити _рівень" #: src/atomix-ui.xml.in.h:10 msgid "Skip the current level" msgstr "Пропустити поточний рівень" #: src/atomix-ui.xml.in.h:11 msgid "Start a new game" msgstr "Розпочати нову гру" #: src/atomix-ui.xml.in.h:12 msgid "Undo the last move" msgstr "Відмінити останній хід" #: src/atomix-ui.xml.in.h:13 msgid "View game credits" msgstr "Показати інформацію про авторів" #: src/atomix-ui.xml.in.h:14 msgid "View highscores" msgstr "Показати кращі результати" #: src/atomix-ui.xml.in.h:15 msgid "_About" msgstr "Про" #: src/atomix-ui.xml.in.h:16 msgid "_Continue game" msgstr "Продовжити гру" #: src/atomix-ui.xml.in.h:17 msgid "_Edit" msgstr "Виправити" #: src/atomix-ui.xml.in.h:18 msgid "_End Game" msgstr "Завершити гру" #: src/atomix-ui.xml.in.h:19 msgid "_Game" msgstr "_Гра" #: src/atomix-ui.xml.in.h:20 msgid "_Help" msgstr "_Довідка" #: src/atomix-ui.xml.in.h:21 msgid "_New Game" msgstr "_Нова гра" #: src/atomix-ui.xml.in.h:22 msgid "_Pause game" msgstr "Призупинити гру" #: src/atomix-ui.xml.in.h:23 msgid "_Preferences ..." msgstr "Налаштування..." #: src/atomix-ui.xml.in.h:24 msgid "_Scores ..." msgstr "Рахунки..." #: src/atomix-ui.xml.in.h:25 msgid "_Undo move" msgstr "Відмінити хід" #: src/level-manager.c:171 msgid "Couldn't find level sequence description." msgstr "Не вдалось знайти послідовний опис рівня." #: src/level-manager.c:185 msgid "No level found." msgstr "Рівня не знайдено." #: src/level-manager.c:286 #, c-format msgid "Found level '%s' in: %s" msgstr "Знайдено рівень \"%s\" у %s" #: src/main.c:118 src/main.c:444 atomix.desktop.in.h:1 msgid "Atomix" msgstr "Атомікс" #: src/main.c:145 msgid "Copyright (C) 1999-2002 Jens Finke" msgstr "Авторське право © Дженс Фінк, 1999-2002" #: src/main.c:146 msgid "A mind game about atoms and molecules." msgstr "Гра про атоми і молекули." #: src/main.c:456 msgid "Congratulations! You have finished all Atomix levels." msgstr "Вітаю! Ви пройшли всі рівні Atomix." #: src/main.c:467 msgid "Couldn't find at least one level." msgstr "Не вдалось знайти жодного рівня." #: src/main.c:472 msgid "Do you want to finish the game?" msgstr "Чи хочете ви завершити гру?" #: src/main.c:591 src/main.c:597 src/main.c:602 #, c-format msgid "Couldn't create directory: %s" msgstr "Не вдалось створити каталог: %s" #. create statistics frame #: src/main.c:701 msgid "Statistics" msgstr "Статистика" #: src/main.c:707 msgid "Level:" msgstr "Рівень:" #: src/main.c:708 msgid "Molecule:" msgstr "Молекула:" #: src/main.c:709 msgid "Score:" msgstr "Рахунок:" #: src/main.c:710 msgid "Time:" msgstr "Час:" #: src/main.c:750 #, c-format msgid "Couldn't find file: %s" msgstr "Не вдалось знайти файл: %s" #: src/theme-manager.c:141 msgid "No themes found." msgstr "Не знайдено тем." #: src/theme-manager.c:205 #, c-format msgid "Found theme '%s' in: %s" msgstr "Знайдено тему \"%s\" у %s" #: atomix.desktop.in.h:2 msgid "Molecule mind game" msgstr "Молекулярна гра" #~ msgid "Atomix Splash" #~ msgstr "Заставка" #~ msgid "Game Paused" #~ msgstr "Гру призупинено" #~ msgid "Game Over" #~ msgstr "Гру завершено" #~ msgid "Atomix - Molecule Mind Game" #~ msgstr "Atomix - молекулярна гра" atomix-2.14.0/po/vi.po0000644000175000017500000001334110357725123011423 00000000000000# Vietnamese translation of Atomix. # Copyright © 2005 Free Software Foundation, Inc. # Nguyễn Thái Ngọc Duy , 2002. # Clytie Siddall , 2005. # msgid "" "" msgstr "Project-Id-Version: atomix HEAD\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-01-07 05:18+0100\n" "PO-Revision-Date: 2006-01-07 22:16+1030\n" "Last-Translator: Clytie Siddall \n" "Language-Team: Vietnamese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0\n" "X-Generator: LocFactoryEditor 1.5.1b\n" #:../level/aceticacid.atomix.xml.h:1 msgid "Acetic Acid" msgstr "Axit axetic" #:../level/acetone.atomix.xml.h:1 msgid "Acetone" msgstr "Axetôn" #:../level/butanol.atomix.xml.h:1 msgid "Butanol" msgstr "Butanola" #:../level/cyclobutane.atomix.xml.h:1 msgid "Cyclobutane" msgstr "Xiclôbutan" #:../level/dimethylether.atomix.xml.h:1 msgid "Dimethyl Ether" msgstr "Ête metyla đôi" #:../level/ethanal.atomix.xml.h:1 msgid "Ethanal" msgstr "Etanan" #:../level/ethane.atomix.xml.h:1 msgid "Ethane" msgstr "Etan" #:../level/ethanol.atomix.xml.h:1 msgid "Ethanol" msgstr "Etanola" #:../level/ethylene.atomix.xml.h:1 msgid "Ethylene" msgstr "Etylen" #:../level/glycerin.atomix.xml.h:1 msgid "Glycerin" msgstr "Glyxerin" #:../level/lactic-acid.atomix.xml.h:1 msgid "Lactic Acid" msgstr "Acit lactic" #:../level/methanal.atomix.xml.h:1 msgid "Methanal" msgstr "Metanan" #:../level/methane.atomix.xml.h:1 msgid "Methane" msgstr "Metan" #:../level/methanol.atomix.xml.h:1 msgid "Methanol" msgstr "Metanola" #:../level/propanal.atomix.xml.h:1 msgid "Propanal" msgstr "Prôpanan" #:../level/propylene.atomix.xml.h:1 msgid "Propylene" msgstr "Prôpylen" #:../level/pyran.atomix.xml.h:1 msgid "Pyran" msgstr "Pyran" #:../level/transbutylen.atomix.xml.h:1 msgid "Trans Butylen" msgstr "Butylen qua" #:../level/water.atomix.xml.h:1 msgid "Water" msgstr "Nước" #:../src/atomix-ui.xml.h:1 msgid "Continue paused game" msgstr "Tiếp tục chơi" #:../src/atomix-ui.xml.h:2 msgid "End a game" msgstr "Kết thúc trò chơi" #:../src/atomix-ui.xml.h:3 msgid "Pause the running game" msgstr "Tạm dừng trò chơi" #:../src/atomix-ui.xml.h:4 msgid "Reset level" msgstr "Đặt lại cấp độ" #:../src/atomix-ui.xml.h:5 msgid "Restores start situation" msgstr "Phục hồi vị trí ban đầu" #:../src/atomix-ui.xml.h:6 msgid "Set preferences" msgstr "Thiết lập thông số" #:../src/atomix-ui.xml.h:7 msgid "Skip _level" msgstr "Bỏ qua _cấp độ" #:../src/atomix-ui.xml.h:8 msgid "Skip the current level" msgstr "Bỏ qua cấp độ này" #:../src/atomix-ui.xml.h:9 msgid "Start a new game" msgstr "Bắt đầu chơi" #:../src/atomix-ui.xml.h:10 msgid "Undo the last move" msgstr "Hoàn lại lần đi cuối" #:../src/atomix-ui.xml.h:11 msgid "View highscores" msgstr "Xem điểm cao" #:../src/atomix-ui.xml.h:12 msgid "_Continue game" msgstr "_Tiếp tục chơi" #:../src/atomix-ui.xml.h:13 msgid "_End Game" msgstr "_Kết thúc trò chơi" #:../src/atomix-ui.xml.h:14 msgid "_Game" msgstr "_Trò chơi" #.submenu name="Edit" _label="_Edit"> #. #. #. #." #:../src/main.c:488 ../atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #:../src/main.c:499 msgid "Congratulations! You have finished all Atomix levels." msgstr "Xin chúc mừng! Bạn đã hoàn tất mọi cấp độ của Atomix." #:../src/main.c:509 msgid "Couldn't find at least one level." msgstr "Không thể tìm thấy cấp độ nào cả." #:../src/main.c:514 msgid "Do you want to finish the game?" msgstr "Bạn có muốn hoàn tất trò chơi không?" #.create statistics frame #:../src/main.c:728 msgid "Statistics" msgstr "Thống kê" #:../src/main.c:734 msgid "Level:" msgstr "Cấp độ:" #:../src/main.c:735 msgid "Molecule:" msgstr "Phân tử:" #:../src/main.c:736 msgid "Formula:" msgstr "Công thức:" #:../src/main.c:737 msgid "Score:" msgstr "Điểm:" #:../src/main.c:738 msgid "Time:" msgstr "Thời gian:" #:../src/main.c:778 #,c-format msgid "Couldn't find file: %s" msgstr "Không thể tìm tập tin: %s" #:../src/theme-manager.c:135 msgid "No themes found." msgstr "Không tìm thấy sắc thái." #:../src/theme-manager.c:193 #,c-format msgid "Found theme '%s' in: %s" msgstr "Tìm thấy sắc thái « %s » trong: %s" #:../atomix.desktop.in.h:2 msgid "Molecule puzzle game" msgstr "Trò chơi trí tuệ về phân tử" atomix-2.14.0/po/wa.po0000644000175000017500000001112510032357427011410 00000000000000# Translation into the walloon language. # # Si vos voloz donner on côp di spale pol ratournaedje di Gnome (ou des # ôtes libes programes) sicrijhoz mu a l' adresse emile # ; nos avans co bråmint di l' ovraedje a fé. # # Copyright (C) 2002 Free Software Foundation, Inc. # Pablo Saratxaga 2002 # Lorint Hendschel , 2002. # Pablo Saratxaga , 2004. # msgid "" msgstr "" "Project-Id-Version: atomix 0.9.2\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2004-03-30 19:00+0200\n" "PO-Revision-Date: 2004-03-30 23:00+0200\n" "Last-Translator: Pablo Saratxaga \n" "Language-Team: Walloon \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: src/atomix-ui.xml.in.h:1 msgid "Continue paused game" msgstr "Continouwer li djeu k' a stî djoké?" #: src/atomix-ui.xml.in.h:2 msgid "E_xit" msgstr "Moussî _foû" #: src/atomix-ui.xml.in.h:3 msgid "End a game" msgstr "Fini on djeu" #: src/atomix-ui.xml.in.h:4 msgid "Exit game" msgstr "Moussî foû do djeu" #: src/atomix-ui.xml.in.h:5 msgid "Pause the running game" msgstr "Djoker li djeu do moumint" #: src/atomix-ui.xml.in.h:6 msgid "Reset level" msgstr "Renonder l' livea" #: src/atomix-ui.xml.in.h:7 msgid "Restores start situation" msgstr "Rimete li situwåcion come divant" #: src/atomix-ui.xml.in.h:8 msgid "Set preferences" msgstr "Defini les preferinces" #: src/atomix-ui.xml.in.h:9 msgid "Skip _level" msgstr "Passer houte do _livea" #: src/atomix-ui.xml.in.h:10 msgid "Skip the current level" msgstr "Passer houte do livea do moumint" #: src/atomix-ui.xml.in.h:11 msgid "Start a new game" msgstr "Comincî on novea djeu" #: src/atomix-ui.xml.in.h:12 msgid "Undo the last move" msgstr "Rivni en erî, come vos n' årîz nén djouwé" #: src/atomix-ui.xml.in.h:13 msgid "View game credits" msgstr "Vey li fitchî d' gråces" #: src/atomix-ui.xml.in.h:14 msgid "View highscores" msgstr "Vey les meyeus rzultats" #: src/atomix-ui.xml.in.h:15 msgid "_About" msgstr "Å _dfait" #: src/atomix-ui.xml.in.h:16 msgid "_Continue game" msgstr "_Continouwer l' djeu" #: src/atomix-ui.xml.in.h:17 msgid "_Edit" msgstr "_Candjî" #: src/atomix-ui.xml.in.h:18 msgid "_End Game" msgstr "_Fini l' djeu" #: src/atomix-ui.xml.in.h:19 msgid "_Game" msgstr "_Djeu" #: src/atomix-ui.xml.in.h:20 msgid "_Help" msgstr "_Aidance" #: src/atomix-ui.xml.in.h:21 msgid "_New Game" msgstr "_Novea Djeu" #: src/atomix-ui.xml.in.h:22 msgid "_Pause game" msgstr "_Djoker li djeu" #: src/atomix-ui.xml.in.h:23 msgid "_Preferences ..." msgstr "_Preferinces..." #: src/atomix-ui.xml.in.h:24 msgid "_Scores ..." msgstr "_Meyeus..." #: src/atomix-ui.xml.in.h:25 msgid "_Undo move" msgstr "Ri_vni en erî" #: src/level-manager.c:171 msgid "Couldn't find level sequence description." msgstr "Dji n' a savou trover li discrijhaedje del secwénce do livea." #: src/level-manager.c:185 msgid "No level found." msgstr "Nou livea di trové." #: src/level-manager.c:286 #, c-format msgid "Found level '%s' in: %s" msgstr "Dj' a trové l' livea «%s» e: %s" #: src/main.c:118 src/main.c:444 atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: src/main.c:145 msgid "Copyright (C) 1999-2002 Jens Finke" msgstr "Copyright © 1999-2002 Jens Finke" #: src/main.c:146 msgid "A mind game about atoms and molecules." msgstr "On djeu di tuzaedje so les atomes eyet les molecules." #: src/main.c:456 msgid "Congratulations! You have finished all Atomix levels." msgstr "Complumints! Vos avoz fini tos les liveas d' Atomix." #: src/main.c:467 msgid "Couldn't find at least one level." msgstr "Dji n' a savou trover di liveas, nén onk." #: src/main.c:472 msgid "Do you want to finish the game?" msgstr "Voloz vs fini l' djeu?" #: src/main.c:591 src/main.c:597 src/main.c:602 #, c-format msgid "Couldn't create directory: %s" msgstr "Dji n' a savou askepyî li ridant: %s" #. create statistics frame #: src/main.c:701 msgid "Statistics" msgstr "Sitatistikes" #: src/main.c:707 msgid "Level:" msgstr "Livea:" #: src/main.c:708 msgid "Molecule:" msgstr "Molecule:" #: src/main.c:709 msgid "Score:" msgstr "Ponts:" #: src/main.c:710 msgid "Time:" msgstr "Tins:" #: src/main.c:750 #, c-format msgid "Couldn't find file: %s" msgstr "Dji n' a savou trover l' fitchî: %s" #: src/theme-manager.c:141 msgid "No themes found." msgstr "Nou tinme di trové." #: src/theme-manager.c:205 #, c-format msgid "Found theme '%s' in: %s" msgstr "Tinme «%s» trové e: %s" #: atomix.desktop.in.h:2 msgid "Molecule mind game" msgstr "Djeu di tuzaedje di molecules" atomix-2.14.0/po/zh_CN.po0000644000175000017500000001025310012440564011774 00000000000000# Simplified Chinese translation for atomix. # Copyright (C) 2001 Free Software Foundation, Inc. # Wang Li , 2002 # Derived from translation from Abel Cheung , 2001. # msgid "" msgstr "" "Project-Id-Version: atomix\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2004-02-11 03:07+0100\n" "PO-Revision-Date: 2002-03-03 15:22+0800\n" "Last-Translator: Wang Li \n" "Language-Team: zh_CN \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: src/atomix-ui.xml.in.h:1 msgid "Continue paused game" msgstr "继续暂停的游戏" #: src/atomix-ui.xml.in.h:2 msgid "E_xit" msgstr "退出(_X)" #: src/atomix-ui.xml.in.h:3 msgid "End a game" msgstr "终止游戏" #: src/atomix-ui.xml.in.h:4 msgid "Exit game" msgstr "退出游戏" #: src/atomix-ui.xml.in.h:5 msgid "Pause the running game" msgstr "暂停进行中的游戏" #: src/atomix-ui.xml.in.h:6 msgid "Reset level" msgstr "重置本级别" #: src/atomix-ui.xml.in.h:7 msgid "Restores start situation" msgstr "回到起始位置" #: src/atomix-ui.xml.in.h:8 msgid "Set preferences" msgstr "设定首选项" #: src/atomix-ui.xml.in.h:9 msgid "Skip _level" msgstr "跳级(_L)" #: src/atomix-ui.xml.in.h:10 msgid "Skip the current level" msgstr "跳过当前级别" #: src/atomix-ui.xml.in.h:11 msgid "Start a new game" msgstr "开始新游戏" #: src/atomix-ui.xml.in.h:12 msgid "Undo the last move" msgstr "撤消最后一着" #: src/atomix-ui.xml.in.h:13 msgid "View game credits" msgstr "查看游戏所有者" #: src/atomix-ui.xml.in.h:14 msgid "View highscores" msgstr "查看积分排行榜" #: src/atomix-ui.xml.in.h:15 msgid "_About" msgstr "关于(_A)" #: src/atomix-ui.xml.in.h:16 msgid "_Continue game" msgstr "继续游戏(_C)" #: src/atomix-ui.xml.in.h:17 msgid "_Edit" msgstr "编辑(_E)" #: src/atomix-ui.xml.in.h:18 msgid "_End Game" msgstr "终止游戏(_E)" #: src/atomix-ui.xml.in.h:19 msgid "_Game" msgstr "游戏(_G)" #: src/atomix-ui.xml.in.h:20 msgid "_Help" msgstr "帮助(_H)" #: src/atomix-ui.xml.in.h:21 msgid "_New Game" msgstr "开始游戏(_N)" #: src/atomix-ui.xml.in.h:22 msgid "_Pause game" msgstr "暂停游戏(_P)" #: src/atomix-ui.xml.in.h:23 msgid "_Preferences ..." msgstr "首选项(_P)..." #: src/atomix-ui.xml.in.h:24 msgid "_Scores ..." msgstr "积分(_S)..." #: src/atomix-ui.xml.in.h:25 msgid "_Undo move" msgstr "撤消着法(_U)" #: src/level-manager.c:171 msgid "Couldn't find level sequence description." msgstr "无法找到级别序列描述。" #: src/level-manager.c:185 msgid "No level found." msgstr "找不到级别。" #: src/level-manager.c:286 #, c-format msgid "Found level '%s' in: %s" msgstr "在 %2$s 中找到级别“%1$s”" #: src/main.c:118 src/main.c:444 atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: src/main.c:145 msgid "Copyright (C) 1999-2002 Jens Finke" msgstr "版权所有 (C) 1999-2002 Jens Finke" #: src/main.c:146 msgid "A mind game about atoms and molecules." msgstr "原子和分子的思考游戏。" #: src/main.c:456 msgid "Congratulations! You have finished all Atomix levels." msgstr "恭喜!你已完成所有 Atomix 级别。" #: src/main.c:467 msgid "Couldn't find at least one level." msgstr "一个级别也找不到。" #: src/main.c:472 msgid "Do you want to finish the game?" msgstr "是否要完成游戏?" #: src/main.c:591 src/main.c:597 src/main.c:602 #, c-format msgid "Couldn't create directory: %s" msgstr "无法建立目录:%s" #. create statistics frame #: src/main.c:701 msgid "Statistics" msgstr "统计" #: src/main.c:707 msgid "Level:" msgstr "级别:" #: src/main.c:708 msgid "Molecule:" msgstr "分子:" #: src/main.c:709 msgid "Score:" msgstr "得分:" #: src/main.c:710 msgid "Time:" msgstr "时间:" #: src/main.c:750 #, c-format msgid "Couldn't find file: %s" msgstr "无法找到文件:%s" #: src/theme-manager.c:141 msgid "No themes found." msgstr "无法找到场景。" #: src/theme-manager.c:205 #, c-format msgid "Found theme '%s' in: %s" msgstr "在 %2$s 中找到场景“%1$s”" #: atomix.desktop.in.h:2 msgid "Molecule mind game" msgstr "分子组合智力游戏" atomix-2.14.0/po/zh_HK.po0000644000175000017500000001324710361026717012013 00000000000000# Chinese (Hong Kong) translation for atomix. # Copyright (C) 2006 Free Software Foundation, Inc. # Abel Cheung , 2001-02, 05-06. # msgid "" msgstr "" "Project-Id-Version: atomix 2.13.4\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-01-09 18:27+0800\n" "PO-Revision-Date: 2006-01-11 05:56+0800\n" "Last-Translator: Abel Cheung \n" "Language-Team: Chinese (Hong Kong) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../level/aceticacid.atomix.xml.h:1 msgid "Acetic Acid" msgstr "醋酸" #: ../level/acetone.atomix.xml.h:1 msgid "Acetone" msgstr "丙酮" #: ../level/butanol.atomix.xml.h:1 msgid "Butanol" msgstr "丁醇" #: ../level/cyclobutane.atomix.xml.h:1 msgid "Cyclobutane" msgstr "環丁烷" #: ../level/dimethylether.atomix.xml.h:1 msgid "Dimethyl Ether" msgstr "二甲醚" #: ../level/ethanal.atomix.xml.h:1 msgid "Ethanal" msgstr "乙醛" #: ../level/ethane.atomix.xml.h:1 msgid "Ethane" msgstr "乙烷" #: ../level/ethanol.atomix.xml.h:1 msgid "Ethanol" msgstr "酒精(乙醇)" #: ../level/ethylene.atomix.xml.h:1 msgid "Ethylene" msgstr "乙烯" #: ../level/glycerin.atomix.xml.h:1 msgid "Glycerin" msgstr "甘油(丙三醇)" #: ../level/lactic-acid.atomix.xml.h:1 msgid "Lactic Acid" msgstr "乳酸" #: ../level/methanal.atomix.xml.h:1 msgid "Methanal" msgstr "甲醛" #: ../level/methane.atomix.xml.h:1 msgid "Methane" msgstr "甲烷" #: ../level/methanol.atomix.xml.h:1 msgid "Methanol" msgstr "甲醇" #: ../level/propanal.atomix.xml.h:1 msgid "Propanal" msgstr "丙醛" #: ../level/propylene.atomix.xml.h:1 msgid "Propylene" msgstr "丙烯" #: ../level/pyran.atomix.xml.h:1 msgid "Pyran" msgstr "吡喃" #: ../level/transbutylen.atomix.xml.h:1 msgid "Trans Butylen" msgstr "β-丁烯" #: ../level/water.atomix.xml.h:1 msgid "Water" msgstr "水" #: ../src/atomix-ui.xml.h:1 msgid "Continue paused game" msgstr "繼續已暫停的遊戲" #: ../src/atomix-ui.xml.h:2 msgid "End a game" msgstr "終止遊戲" #: ../src/atomix-ui.xml.h:3 msgid "Pause the running game" msgstr "暫停此遊戲" #: ../src/atomix-ui.xml.h:4 msgid "Reset level" msgstr "重新開始這一關" #: ../src/atomix-ui.xml.h:5 msgid "Restores start situation" msgstr "重設版圖" #: ../src/atomix-ui.xml.h:6 msgid "Set preferences" msgstr "設定偏好" #: ../src/atomix-ui.xml.h:7 msgid "Skip _level" msgstr "跳過版圖(_L)" #: ../src/atomix-ui.xml.h:8 msgid "Skip the current level" msgstr "跳過這一關" #: ../src/atomix-ui.xml.h:9 msgid "Start a new game" msgstr "開始新遊戲" #: ../src/atomix-ui.xml.h:10 msgid "Undo the last move" msgstr "還原上一步" #: ../src/atomix-ui.xml.h:11 msgid "View highscores" msgstr "檢視積分排行榜" #: ../src/atomix-ui.xml.h:12 msgid "_Continue game" msgstr "繼續遊戲(_C)" #: ../src/atomix-ui.xml.h:13 msgid "_End Game" msgstr "終止遊戲(_E)" #: ../src/atomix-ui.xml.h:14 msgid "_Game" msgstr "遊戲(_G)" #. submenu name="Edit" _label="_Edit"> #. #. #. #. , 2001-02, 05-06" #: ../src/main.c:488 ../atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: ../src/main.c:499 msgid "Congratulations! You have finished all Atomix levels." msgstr "恭喜!已經完成所有 Atomix 版圖了。" #: ../src/main.c:509 msgid "Couldn't find at least one level." msgstr "找不到任何版圖。" #: ../src/main.c:514 msgid "Do you want to finish the game?" msgstr "是否要完成遊戲?" #. create statistics frame #: ../src/main.c:728 msgid "Statistics" msgstr "統計" #: ../src/main.c:734 msgid "Level:" msgstr "版圖:" #: ../src/main.c:735 msgid "Molecule:" msgstr "分子:" # (Abel) 這裡是 empirical formula(經驗式)的簡稱,但少人明白; # 況且這只是遊戲,採用一般人較易明白的詞彙會比較適當 #: ../src/main.c:736 msgid "Formula:" msgstr "分子式:" #: ../src/main.c:737 msgid "Score:" msgstr "分數:" #: ../src/main.c:738 msgid "Time:" msgstr "時間:" #: ../src/main.c:778 #, c-format msgid "Couldn't find file: %s" msgstr "找不到檔案:%s。" #: ../src/theme-manager.c:135 msgid "No themes found." msgstr "找不到佈景主題。" #: ../src/theme-manager.c:193 #, c-format msgid "Found theme '%s' in: %s" msgstr "已找到佈景主題「%s」,位置在:%s" #: ../atomix.desktop.in.h:2 msgid "Molecule puzzle game" msgstr "分子組合智力遊戲" atomix-2.14.0/po/zh_TW.po0000644000175000017500000001326310361026663012041 00000000000000# Chinese (Taiwan) translation for atomix. # Copyright (C) 2001, 02, 05, 06 Free Software Foundation, Inc. # Abel Cheung , 2001-02, 05-06. # msgid "" msgstr "" "Project-Id-Version: atomix 2.13.4\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-01-09 18:27+0800\n" "PO-Revision-Date: 2006-01-11 05:55+0800\n" "Last-Translator: Abel Cheung \n" "Language-Team: Chinese (Taiwan) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../level/aceticacid.atomix.xml.h:1 msgid "Acetic Acid" msgstr "醋酸" #: ../level/acetone.atomix.xml.h:1 msgid "Acetone" msgstr "丙酮" #: ../level/butanol.atomix.xml.h:1 msgid "Butanol" msgstr "丁醇" #: ../level/cyclobutane.atomix.xml.h:1 msgid "Cyclobutane" msgstr "環丁烷" #: ../level/dimethylether.atomix.xml.h:1 msgid "Dimethyl Ether" msgstr "二甲醚" #: ../level/ethanal.atomix.xml.h:1 msgid "Ethanal" msgstr "乙醛" #: ../level/ethane.atomix.xml.h:1 msgid "Ethane" msgstr "乙烷" #: ../level/ethanol.atomix.xml.h:1 msgid "Ethanol" msgstr "酒精(乙醇)" #: ../level/ethylene.atomix.xml.h:1 msgid "Ethylene" msgstr "乙烯" #: ../level/glycerin.atomix.xml.h:1 msgid "Glycerin" msgstr "甘油(丙三醇)" #: ../level/lactic-acid.atomix.xml.h:1 msgid "Lactic Acid" msgstr "乳酸" #: ../level/methanal.atomix.xml.h:1 msgid "Methanal" msgstr "甲醛" #: ../level/methane.atomix.xml.h:1 msgid "Methane" msgstr "甲烷" #: ../level/methanol.atomix.xml.h:1 msgid "Methanol" msgstr "甲醇" #: ../level/propanal.atomix.xml.h:1 msgid "Propanal" msgstr "丙醛" #: ../level/propylene.atomix.xml.h:1 msgid "Propylene" msgstr "丙烯" #: ../level/pyran.atomix.xml.h:1 msgid "Pyran" msgstr "吡喃" #: ../level/transbutylen.atomix.xml.h:1 msgid "Trans Butylen" msgstr "β-丁烯" #: ../level/water.atomix.xml.h:1 msgid "Water" msgstr "水" #: ../src/atomix-ui.xml.h:1 msgid "Continue paused game" msgstr "繼續已暫停的遊戲" #: ../src/atomix-ui.xml.h:2 msgid "End a game" msgstr "終止遊戲" #: ../src/atomix-ui.xml.h:3 msgid "Pause the running game" msgstr "暫停此遊戲" #: ../src/atomix-ui.xml.h:4 msgid "Reset level" msgstr "重新開始這一關" #: ../src/atomix-ui.xml.h:5 msgid "Restores start situation" msgstr "重設版圖" #: ../src/atomix-ui.xml.h:6 msgid "Set preferences" msgstr "設定偏好" #: ../src/atomix-ui.xml.h:7 msgid "Skip _level" msgstr "跳過版圖(_L)" #: ../src/atomix-ui.xml.h:8 msgid "Skip the current level" msgstr "跳過這一關" #: ../src/atomix-ui.xml.h:9 msgid "Start a new game" msgstr "開始新遊戲" #: ../src/atomix-ui.xml.h:10 msgid "Undo the last move" msgstr "還原上一步" #: ../src/atomix-ui.xml.h:11 msgid "View highscores" msgstr "檢視積分排行榜" #: ../src/atomix-ui.xml.h:12 msgid "_Continue game" msgstr "繼續遊戲(_C)" #: ../src/atomix-ui.xml.h:13 msgid "_End Game" msgstr "終止遊戲(_E)" #: ../src/atomix-ui.xml.h:14 msgid "_Game" msgstr "遊戲(_G)" #. submenu name="Edit" _label="_Edit"> #. #. #. #. , 2001-02, 05-06" #: ../src/main.c:488 ../atomix.desktop.in.h:1 msgid "Atomix" msgstr "Atomix" #: ../src/main.c:499 msgid "Congratulations! You have finished all Atomix levels." msgstr "恭喜!已經完成所有 Atomix 版圖了。" #: ../src/main.c:509 msgid "Couldn't find at least one level." msgstr "找不到任何版圖。" #: ../src/main.c:514 msgid "Do you want to finish the game?" msgstr "是否要完成遊戲?" #. create statistics frame #: ../src/main.c:728 msgid "Statistics" msgstr "統計" #: ../src/main.c:734 msgid "Level:" msgstr "版圖:" #: ../src/main.c:735 msgid "Molecule:" msgstr "分子:" # (Abel) 這裡是 empirical formula(經驗式)的簡稱,但少人明白; # 況且這只是遊戲,採用一般人較易明白的詞彙會比較適當 #: ../src/main.c:736 msgid "Formula:" msgstr "分子式:" #: ../src/main.c:737 msgid "Score:" msgstr "分數:" #: ../src/main.c:738 msgid "Time:" msgstr "時間:" #: ../src/main.c:778 #, c-format msgid "Couldn't find file: %s" msgstr "找不到檔案:%s。" #: ../src/theme-manager.c:135 msgid "No themes found." msgstr "找不到佈景主題。" #: ../src/theme-manager.c:193 #, c-format msgid "Found theme '%s' in: %s" msgstr "已找到佈景主題「%s」,位置在:%s" #: ../atomix.desktop.in.h:2 msgid "Molecule puzzle game" msgstr "分子組合智力遊戲" atomix-2.14.0/po/POTFILES.skip0000644000175000017500000000002207433435337012560 00000000000000src/atomix-ui.xml atomix-2.14.0/README0000644000175000017500000000177010336223354010706 00000000000000Atomix is a puzzle game in which you have to build full molecules, from simple inorganic ones in the first levels to extremely complex organic ones in the last levels, out of isolated atoms, which are laying around among walls and other obstacles on the playfield. Once you push an atom in a certain direction, it will move until it hits something that makes it stop, which could be a wall or another atom. This behaviour is exactly what makes playing it not trivial and, therefore, fun, as you need to think quite a lot about how to have your molecule organized. For compilation and installation instructions, see the notes in the INSTALL file. As for latest releases, they are always available on the GNOME official FTP site: http://ftp.gnome.org/pub/GNOME/sources/atomix/ If you find any bugs or have any kind of feature requests, please, let me know by reporting them on the GNOME bugzilla, either by using bug-buddy or by visiting http://bugzilla.gnome.org. -- Guilherme de S. Pastore gpastore@gnome.org atomix-2.14.0/configure.in0000644000175000017500000000325510404437613012340 00000000000000AC_PREREQ(2.52) AC_INIT(atomix, 2.14.0, http://bugzilla.gnome.org/enter_bug.cgi?product=atomix) AM_INIT_AUTOMAKE(AC_PACKAGE_NAME, AC_PACKAGE_VERSION) AC_CONFIG_SRCDIR(src/board.c) AM_CONFIG_HEADER(config.h) AC_PROG_INTLTOOL AC_ISC_POSIX AC_PROG_CC AM_PROG_CC_STDC AC_HEADER_STDC AC_PROG_RANLIB GNOME_COMPILE_WARNINGS dnl ================= Requirements ======================= LIBGNOME_REQUIRED=2.0.1 LIBGNOMEUI_REQUIRED=2.0.1 LIBXML_REQUIRED=2.4.23 GDK_PIXBUF_REQUIRED=2.0.5 #LIBGLADE_REQUIRED=2.0.0 LIBGNOMECANVAS_REQUIRED=2.0.1 LIBBONOBOUI_REQUIRED=2.0.0 dnl ****************************** dnl pkg-config checks dnl ****************************** ATOMIX_MODULES="libgnome-2.0 >= $LIBGNOME_REQUIRED libgnomeui-2.0 >= $LIBGNOMEUI_REQUIRED libxml-2.0 >= $LIBXML_REQUIRED gdk-pixbuf-2.0 >= $GDK_PIXBUF_REQUIRED libgnomecanvas-2.0 >= $LIBGNOMECANVAS_REQUIRED libbonoboui-2.0 >= $LIBBONOBOUI_REQUIRED" #libglade-2.0 >= $LIBGLADE_REQUIRED PKG_CHECK_MODULES(ATOMIX, $ATOMIX_MODULES) AC_SUBST(ATOMIX_CFLAGS) AC_SUBST(ATOMIX_LIBS) dnl ******************************* dnl Internationalization dnl ******************************* GETTEXT_PACKAGE=atomix AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE") AC_SUBST(GETTEXT_PACKAGE) dnl Add the languages which your application supports here. ALL_LINGUAS="am az be bg ca cs da de el en_CA en_GB es et fa fi fr ga gl gu he hi hu is it ja kn ko lt lv mk ml ms nb nl no pa pl pt pt_BR ru sk sl sq sr sr@Latn sv ta tr uk vi wa zh_CN zh_HK zh_TW" AM_GLIB_GNU_GETTEXT EXTRA_WARNING_CFLAGS=" $warning_flags" AC_SUBST(EXTRA_WARNING_CFLAGS) AC_CONFIG_FILES([ Makefile po/Makefile.in src/Makefile themes/Makefile themes/default/Makefile level/Makefile]) AC_OUTPUT atomix-2.14.0/aclocal.m40000644000175000017500000017272710404437645011707 00000000000000# generated automatically by aclocal 1.9.6 -*- Autoconf -*- # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, # 2005 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. # Copyright (C) 1995-2002 Free Software Foundation, Inc. # Copyright (C) 2001-2003,2004 Red Hat, Inc. # # This file is free software, distributed under the terms of the GNU # General Public License. As a special exception to the GNU General # Public License, this file may be distributed as part of a program # that contains a configuration script generated by Autoconf, under # the same distribution terms as the rest of that program. # # This file can be copied and used freely without restrictions. It can # be used in projects which are not available under the GNU Public License # but which still want to provide support for the GNU gettext functionality. # # Macro to add for using GNU gettext. # Ulrich Drepper , 1995, 1996 # # Modified to never use included libintl. # Owen Taylor , 12/15/1998 # # Major rework to remove unused code # Owen Taylor , 12/11/2002 # # Added better handling of ALL_LINGUAS from GNU gettext version # written by Bruno Haible, Owen Taylor 5/30/3002 # # Modified to require ngettext # Matthias Clasen 08/06/2004 # # We need this here as well, since someone might use autoconf-2.5x # to configure GLib then an older version to configure a package # using AM_GLIB_GNU_GETTEXT AC_PREREQ(2.53) dnl dnl We go to great lengths to make sure that aclocal won't dnl try to pull in the installed version of these macros dnl when running aclocal in the glib directory. dnl m4_copy([AC_DEFUN],[glib_DEFUN]) m4_copy([AC_REQUIRE],[glib_REQUIRE]) dnl dnl At the end, if we're not within glib, we'll define the public dnl definitions in terms of our private definitions. dnl # GLIB_LC_MESSAGES #-------------------- glib_DEFUN([GLIB_LC_MESSAGES], [AC_CHECK_HEADERS([locale.h]) if test $ac_cv_header_locale_h = yes; then AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES, [AC_TRY_LINK([#include ], [return LC_MESSAGES], am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)]) if test $am_cv_val_LC_MESSAGES = yes; then AC_DEFINE(HAVE_LC_MESSAGES, 1, [Define if your file defines LC_MESSAGES.]) fi fi]) # GLIB_PATH_PROG_WITH_TEST #---------------------------- dnl GLIB_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR, dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]]) glib_DEFUN([GLIB_PATH_PROG_WITH_TEST], [# Extract the first word of "$2", so it can be a program name with args. set dummy $2; ac_word=[$]2 AC_MSG_CHECKING([for $ac_word]) AC_CACHE_VAL(ac_cv_path_$1, [case "[$]$1" in /*) ac_cv_path_$1="[$]$1" # Let the user override the test with a path. ;; *) IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" for ac_dir in ifelse([$5], , $PATH, [$5]); do test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/$ac_word; then if [$3]; then ac_cv_path_$1="$ac_dir/$ac_word" break fi fi done IFS="$ac_save_ifs" dnl If no 4th arg is given, leave the cache variable unset, dnl so AC_PATH_PROGS will keep looking. ifelse([$4], , , [ test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4" ])dnl ;; esac])dnl $1="$ac_cv_path_$1" if test ifelse([$4], , [-n "[$]$1"], ["[$]$1" != "$4"]); then AC_MSG_RESULT([$]$1) else AC_MSG_RESULT(no) fi AC_SUBST($1)dnl ]) # GLIB_WITH_NLS #----------------- glib_DEFUN([GLIB_WITH_NLS], dnl NLS is obligatory [USE_NLS=yes AC_SUBST(USE_NLS) gt_cv_have_gettext=no CATOBJEXT=NONE XGETTEXT=: INTLLIBS= AC_CHECK_HEADER(libintl.h, [gt_cv_func_dgettext_libintl="no" libintl_extra_libs="" # # First check in libc # AC_CACHE_CHECK([for ngettext in libc], gt_cv_func_ngettext_libc, [AC_TRY_LINK([ #include ], [return !ngettext ("","", 1)], gt_cv_func_ngettext_libc=yes, gt_cv_func_ngettext_libc=no) ]) if test "$gt_cv_func_ngettext_libc" = "yes" ; then AC_CACHE_CHECK([for dgettext in libc], gt_cv_func_dgettext_libc, [AC_TRY_LINK([ #include ], [return !dgettext ("","")], gt_cv_func_dgettext_libc=yes, gt_cv_func_dgettext_libc=no) ]) fi if test "$gt_cv_func_ngettext_libc" = "yes" ; then AC_CHECK_FUNCS(bind_textdomain_codeset) fi # # If we don't have everything we want, check in libintl # if test "$gt_cv_func_dgettext_libc" != "yes" \ || test "$gt_cv_func_ngettext_libc" != "yes" \ || test "$ac_cv_func_bind_textdomain_codeset" != "yes" ; then AC_CHECK_LIB(intl, bindtextdomain, [AC_CHECK_LIB(intl, ngettext, [AC_CHECK_LIB(intl, dgettext, gt_cv_func_dgettext_libintl=yes)])]) if test "$gt_cv_func_dgettext_libintl" != "yes" ; then AC_MSG_CHECKING([if -liconv is needed to use gettext]) AC_MSG_RESULT([]) AC_CHECK_LIB(intl, ngettext, [AC_CHECK_LIB(intl, dcgettext, [gt_cv_func_dgettext_libintl=yes libintl_extra_libs=-liconv], :,-liconv)], :,-liconv) fi # # If we found libintl, then check in it for bind_textdomain_codeset(); # we'll prefer libc if neither have bind_textdomain_codeset(), # and both have dgettext and ngettext # if test "$gt_cv_func_dgettext_libintl" = "yes" ; then glib_save_LIBS="$LIBS" LIBS="$LIBS -lintl $libintl_extra_libs" unset ac_cv_func_bind_textdomain_codeset AC_CHECK_FUNCS(bind_textdomain_codeset) LIBS="$glib_save_LIBS" if test "$ac_cv_func_bind_textdomain_codeset" = "yes" ; then gt_cv_func_dgettext_libc=no else if test "$gt_cv_func_dgettext_libc" = "yes" \ && test "$gt_cv_func_ngettext_libc" = "yes"; then gt_cv_func_dgettext_libintl=no fi fi fi fi if test "$gt_cv_func_dgettext_libc" = "yes" \ || test "$gt_cv_func_dgettext_libintl" = "yes"; then gt_cv_have_gettext=yes fi if test "$gt_cv_func_dgettext_libintl" = "yes"; then INTLLIBS="-lintl $libintl_extra_libs" fi if test "$gt_cv_have_gettext" = "yes"; then AC_DEFINE(HAVE_GETTEXT,1, [Define if the GNU gettext() function is already present or preinstalled.]) GLIB_PATH_PROG_WITH_TEST(MSGFMT, msgfmt, [test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], no)dnl if test "$MSGFMT" != "no"; then glib_save_LIBS="$LIBS" LIBS="$LIBS $INTLLIBS" AC_CHECK_FUNCS(dcgettext) AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) GLIB_PATH_PROG_WITH_TEST(XGETTEXT, xgettext, [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :) AC_TRY_LINK(, [extern int _nl_msg_cat_cntr; return _nl_msg_cat_cntr], [CATOBJEXT=.gmo DATADIRNAME=share], [case $host in *-*-solaris*) dnl On Solaris, if bind_textdomain_codeset is in libc, dnl GNU format message catalog is always supported, dnl since both are added to the libc all together. dnl Hence, we'd like to go with DATADIRNAME=share and dnl and CATOBJEXT=.gmo in this case. AC_CHECK_FUNC(bind_textdomain_codeset, [CATOBJEXT=.gmo DATADIRNAME=share], [CATOBJEXT=.mo DATADIRNAME=lib]) ;; *) CATOBJEXT=.mo DATADIRNAME=lib ;; esac]) LIBS="$glib_save_LIBS" INSTOBJEXT=.mo else gt_cv_have_gettext=no fi fi ]) if test "$gt_cv_have_gettext" = "yes" ; then AC_DEFINE(ENABLE_NLS, 1, [always defined to indicate that i18n is enabled]) fi dnl Test whether we really found GNU xgettext. if test "$XGETTEXT" != ":"; then dnl If it is not GNU xgettext we define it as : so that the dnl Makefiles still can work. if $XGETTEXT --omit-header /dev/null 2> /dev/null; then : ; else AC_MSG_RESULT( [found xgettext program is not GNU xgettext; ignore it]) XGETTEXT=":" fi fi # We need to process the po/ directory. POSUB=po AC_OUTPUT_COMMANDS( [case "$CONFIG_FILES" in *po/Makefile.in*) sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile esac]) dnl These rules are solely for the distribution goal. While doing this dnl we only have to keep exactly one list of the available catalogs dnl in configure.in. for lang in $ALL_LINGUAS; do GMOFILES="$GMOFILES $lang.gmo" POFILES="$POFILES $lang.po" done dnl Make all variables we use known to autoconf. AC_SUBST(CATALOGS) AC_SUBST(CATOBJEXT) AC_SUBST(DATADIRNAME) AC_SUBST(GMOFILES) AC_SUBST(INSTOBJEXT) AC_SUBST(INTLLIBS) AC_SUBST(PO_IN_DATADIR_TRUE) AC_SUBST(PO_IN_DATADIR_FALSE) AC_SUBST(POFILES) AC_SUBST(POSUB) ]) # AM_GLIB_GNU_GETTEXT # ------------------- # Do checks necessary for use of gettext. If a suitable implementation # of gettext is found in either in libintl or in the C library, # it will set INTLLIBS to the libraries needed for use of gettext # and AC_DEFINE() HAVE_GETTEXT and ENABLE_NLS. (The shell variable # gt_cv_have_gettext will be set to "yes".) It will also call AC_SUBST() # on various variables needed by the Makefile.in.in installed by # glib-gettextize. dnl glib_DEFUN([GLIB_GNU_GETTEXT], [AC_REQUIRE([AC_PROG_CC])dnl AC_REQUIRE([AC_HEADER_STDC])dnl GLIB_LC_MESSAGES GLIB_WITH_NLS if test "$gt_cv_have_gettext" = "yes"; then if test "x$ALL_LINGUAS" = "x"; then LINGUAS= else AC_MSG_CHECKING(for catalogs to be installed) NEW_LINGUAS= for presentlang in $ALL_LINGUAS; do useit=no if test "%UNSET%" != "${LINGUAS-%UNSET%}"; then desiredlanguages="$LINGUAS" else desiredlanguages="$ALL_LINGUAS" fi for desiredlang in $desiredlanguages; do # Use the presentlang catalog if desiredlang is # a. equal to presentlang, or # b. a variant of presentlang (because in this case, # presentlang can be used as a fallback for messages # which are not translated in the desiredlang catalog). case "$desiredlang" in "$presentlang"*) useit=yes;; esac done if test $useit = yes; then NEW_LINGUAS="$NEW_LINGUAS $presentlang" fi done LINGUAS=$NEW_LINGUAS AC_MSG_RESULT($LINGUAS) fi dnl Construct list of names of catalog files to be constructed. if test -n "$LINGUAS"; then for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done fi fi dnl If the AC_CONFIG_AUX_DIR macro for autoconf is used we possibly dnl find the mkinstalldirs script in another subdir but ($top_srcdir). dnl Try to locate is. MKINSTALLDIRS= if test -n "$ac_aux_dir"; then MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs" fi if test -z "$MKINSTALLDIRS"; then MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs" fi AC_SUBST(MKINSTALLDIRS) dnl Generate list of files to be processed by xgettext which will dnl be included in po/Makefile. test -d po || mkdir po if test "x$srcdir" != "x."; then if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then posrcprefix="$srcdir/" else posrcprefix="../$srcdir/" fi else posrcprefix="../" fi rm -f po/POTFILES sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \ < $srcdir/po/POTFILES.in > po/POTFILES ]) # AM_GLIB_DEFINE_LOCALEDIR(VARIABLE) # ------------------------------- # Define VARIABLE to the location where catalog files will # be installed by po/Makefile. glib_DEFUN([GLIB_DEFINE_LOCALEDIR], [glib_REQUIRE([GLIB_GNU_GETTEXT])dnl glib_save_prefix="$prefix" glib_save_exec_prefix="$exec_prefix" test "x$prefix" = xNONE && prefix=$ac_default_prefix test "x$exec_prefix" = xNONE && exec_prefix=$prefix if test "x$CATOBJEXT" = "x.mo" ; then localedir=`eval echo "${libdir}/locale"` else localedir=`eval echo "${datadir}/locale"` fi prefix="$glib_save_prefix" exec_prefix="$glib_save_exec_prefix" AC_DEFINE_UNQUOTED($1, "$localedir", [Define the location where the catalogs will be installed]) ]) dnl dnl Now the definitions that aclocal will find dnl ifdef(glib_configure_in,[],[ AC_DEFUN([AM_GLIB_GNU_GETTEXT],[GLIB_GNU_GETTEXT($@)]) AC_DEFUN([AM_GLIB_DEFINE_LOCALEDIR],[GLIB_DEFINE_LOCALEDIR($@)]) ])dnl dnl GNOME_COMPILE_WARNINGS dnl Turn on many useful compiler warnings dnl For now, only works on GCC AC_DEFUN([GNOME_COMPILE_WARNINGS],[ dnl ****************************** dnl More compiler warnings dnl ****************************** AC_ARG_ENABLE(compile-warnings, AC_HELP_STRING([--enable-compile-warnings=@<:@no/minimum/yes/maximum/error@:>@], [Turn on compiler warnings]),, [enable_compile_warnings="m4_default([$1],[yes])"]) warnCFLAGS= if test "x$GCC" != xyes; then enable_compile_warnings=no fi warning_flags= realsave_CFLAGS="$CFLAGS" case "$enable_compile_warnings" in no) warning_flags= ;; minimum) warning_flags="-Wall" ;; yes) warning_flags="-Wall -Wmissing-prototypes" ;; maximum|error) warning_flags="-Wall -Wmissing-prototypes -Wnested-externs -Wpointer-arith" CFLAGS="$warning_flags $CFLAGS" for option in -Wno-sign-compare; do SAVE_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $option" AC_MSG_CHECKING([whether gcc understands $option]) AC_TRY_COMPILE([], [], has_option=yes, has_option=no,) CFLAGS="$SAVE_CFLAGS" AC_MSG_RESULT($has_option) if test $has_option = yes; then warning_flags="$warning_flags $option" fi unset has_option unset SAVE_CFLAGS done unset option if test "$enable_compile_warnings" = "error" ; then warning_flags="$warning_flags -Werror" fi ;; *) AC_MSG_ERROR(Unknown argument '$enable_compile_warnings' to --enable-compile-warnings) ;; esac CFLAGS="$realsave_CFLAGS" AC_MSG_CHECKING(what warning flags to pass to the C compiler) AC_MSG_RESULT($warning_flags) AC_ARG_ENABLE(iso-c, AC_HELP_STRING([--enable-iso-c], [Try to warn if code is not ISO C ]),, [enable_iso_c=no]) AC_MSG_CHECKING(what language compliance flags to pass to the C compiler) complCFLAGS= if test "x$enable_iso_c" != "xno"; then if test "x$GCC" = "xyes"; then case " $CFLAGS " in *[\ \ ]-ansi[\ \ ]*) ;; *) complCFLAGS="$complCFLAGS -ansi" ;; esac case " $CFLAGS " in *[\ \ ]-pedantic[\ \ ]*) ;; *) complCFLAGS="$complCFLAGS -pedantic" ;; esac fi fi AC_MSG_RESULT($complCFLAGS) WARN_CFLAGS="$warning_flags $complCFLAGS" AC_SUBST(WARN_CFLAGS) ]) dnl For C++, do basically the same thing. AC_DEFUN([GNOME_CXX_WARNINGS],[ AC_ARG_ENABLE(cxx-warnings, AC_HELP_STRING([--enable-cxx-warnings=@<:@no/minimum/yes@:>@] [Turn on compiler warnings.]),, [enable_cxx_warnings="m4_default([$1],[minimum])"]) AC_MSG_CHECKING(what warning flags to pass to the C++ compiler) warnCXXFLAGS= if test "x$GCC" != xyes; then enable_compile_warnings=no fi if test "x$enable_cxx_warnings" != "xno"; then if test "x$GCC" = "xyes"; then case " $CXXFLAGS " in *[\ \ ]-Wall[\ \ ]*) ;; *) warnCXXFLAGS="-Wall -Wno-unused" ;; esac ## -W is not all that useful. And it cannot be controlled ## with individual -Wno-xxx flags, unlike -Wall if test "x$enable_cxx_warnings" = "xyes"; then warnCXXFLAGS="$warnCXXFLAGS -Wshadow -Woverloaded-virtual" fi fi fi AC_MSG_RESULT($warnCXXFLAGS) AC_ARG_ENABLE(iso-cxx, AC_HELP_STRING([--enable-iso-cxx], [Try to warn if code is not ISO C++ ]),, [enable_iso_cxx=no]) AC_MSG_CHECKING(what language compliance flags to pass to the C++ compiler) complCXXFLAGS= if test "x$enable_iso_cxx" != "xno"; then if test "x$GCC" = "xyes"; then case " $CXXFLAGS " in *[\ \ ]-ansi[\ \ ]*) ;; *) complCXXFLAGS="$complCXXFLAGS -ansi" ;; esac case " $CXXFLAGS " in *[\ \ ]-pedantic[\ \ ]*) ;; *) complCXXFLAGS="$complCXXFLAGS -pedantic" ;; esac fi fi AC_MSG_RESULT($complCXXFLAGS) WARN_CXXFLAGS="$CXXFLAGS $warnCXXFLAGS $complCXXFLAGS" AC_SUBST(WARN_CXXFLAGS) ]) dnl IT_PROG_INTLTOOL([MINIMUM-VERSION], [no-xml]) # serial 2 IT_PROG_INTLTOOL AC_DEFUN([IT_PROG_INTLTOOL], [AC_PREREQ([2.50])dnl case "$am__api_version" in 1.[01234]) AC_MSG_ERROR([Automake 1.5 or newer is required to use intltool]) ;; *) ;; esac if test -n "$1"; then AC_MSG_CHECKING(for intltool >= $1) INTLTOOL_REQUIRED_VERSION_AS_INT=`echo $1 | awk -F. '{ print $ 1 * 100 + $ 2; }'` INTLTOOL_APPLIED_VERSION=`awk -F\" '/\\$VERSION / { print $ 2; }' ${ac_aux_dir}/intltool-update.in` [INTLTOOL_APPLIED_VERSION_AS_INT=`awk -F\" '/\\$VERSION / { split($ 2, VERSION, "."); print VERSION[1] * 100 + VERSION[2];}' ${ac_aux_dir}/intltool-update.in` ] AC_MSG_RESULT([$INTLTOOL_APPLIED_VERSION found]) test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge "$INTLTOOL_REQUIRED_VERSION_AS_INT" || AC_MSG_ERROR([Your intltool is too old. You need intltool $1 or later.]) fi INTLTOOL_DESKTOP_RULE='%.desktop: %.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_DIRECTORY_RULE='%.directory: %.directory.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_KEYS_RULE='%.keys: %.keys.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -k -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_PROP_RULE='%.prop: %.prop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_OAF_RULE='%.oaf: %.oaf.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -o -p $(top_srcdir)/po $< [$]@' INTLTOOL_PONG_RULE='%.pong: %.pong.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_SERVER_RULE='%.server: %.server.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -o -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_SHEET_RULE='%.sheet: %.sheet.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_SOUNDLIST_RULE='%.soundlist: %.soundlist.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_UI_RULE='%.ui: %.ui.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_XML_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_XML_NOMERGE_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u /tmp $< [$]@' INTLTOOL_XAM_RULE='%.xam: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_KBD_RULE='%.kbd: %.kbd.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -m -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_CAVES_RULE='%.caves: %.caves.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_SCHEMAS_RULE='%.schemas: %.schemas.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -s -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_THEME_RULE='%.theme: %.theme.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' INTLTOOL_SERVICE_RULE='%.service: %.service.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' AC_SUBST(INTLTOOL_DESKTOP_RULE) AC_SUBST(INTLTOOL_DIRECTORY_RULE) AC_SUBST(INTLTOOL_KEYS_RULE) AC_SUBST(INTLTOOL_PROP_RULE) AC_SUBST(INTLTOOL_OAF_RULE) AC_SUBST(INTLTOOL_PONG_RULE) AC_SUBST(INTLTOOL_SERVER_RULE) AC_SUBST(INTLTOOL_SHEET_RULE) AC_SUBST(INTLTOOL_SOUNDLIST_RULE) AC_SUBST(INTLTOOL_UI_RULE) AC_SUBST(INTLTOOL_XAM_RULE) AC_SUBST(INTLTOOL_KBD_RULE) AC_SUBST(INTLTOOL_XML_RULE) AC_SUBST(INTLTOOL_XML_NOMERGE_RULE) AC_SUBST(INTLTOOL_CAVES_RULE) AC_SUBST(INTLTOOL_SCHEMAS_RULE) AC_SUBST(INTLTOOL_THEME_RULE) AC_SUBST(INTLTOOL_SERVICE_RULE) # Use the tools built into the package, not the ones that are installed. AC_SUBST(INTLTOOL_EXTRACT, '$(top_builddir)/intltool-extract') AC_SUBST(INTLTOOL_MERGE, '$(top_builddir)/intltool-merge') AC_SUBST(INTLTOOL_UPDATE, '$(top_builddir)/intltool-update') AC_PATH_PROG(INTLTOOL_PERL, perl) if test -z "$INTLTOOL_PERL"; then AC_MSG_ERROR([perl not found; required for intltool]) fi if test -z "`$INTLTOOL_PERL -v | fgrep '5.' 2> /dev/null`"; then AC_MSG_ERROR([perl 5.x required for intltool]) fi if test "x$2" != "xno-xml"; then AC_MSG_CHECKING([for XML::Parser]) if `$INTLTOOL_PERL -e "require XML::Parser" 2>/dev/null`; then AC_MSG_RESULT([ok]) else AC_MSG_ERROR([XML::Parser perl module is required for intltool]) fi fi AC_PATH_PROG(INTLTOOL_ICONV, iconv, iconv) AC_PATH_PROG(INTLTOOL_MSGFMT, msgfmt, msgfmt) AC_PATH_PROG(INTLTOOL_MSGMERGE, msgmerge, msgmerge) AC_PATH_PROG(INTLTOOL_XGETTEXT, xgettext, xgettext) IT_PO_SUBDIR([po]) dnl The following is very similar to dnl dnl AC_CONFIG_FILES([intltool-extract intltool-merge intltool-update]) dnl dnl with the following slight differences: dnl - the *.in files are in ac_aux_dir, dnl - if the file haven't changed upon reconfigure, it's not touched, dnl - the evaluation of the third parameter enables a hack which computes dnl the actual value of $libdir, dnl - the user sees "executing intltool commands", instead of dnl "creating intltool-extract" and such. dnl dnl Nothing crucial here, and we could use AC_CONFIG_FILES, if there were dnl a reason for it. AC_CONFIG_COMMANDS([intltool], [ for file in intltool-extract intltool-merge intltool-update; do sed -e "s|@INTLTOOL_EXTRACT@|`pwd`/intltool-extract|g" \ -e "s|@INTLTOOL_LIBDIR@|${INTLTOOL_LIBDIR}|g" \ -e "s|@INTLTOOL_ICONV@|${INTLTOOL_ICONV}|g" \ -e "s|@INTLTOOL_MSGFMT@|${INTLTOOL_MSGFMT}|g" \ -e "s|@INTLTOOL_MSGMERGE@|${INTLTOOL_MSGMERGE}|g" \ -e "s|@INTLTOOL_XGETTEXT@|${INTLTOOL_XGETTEXT}|g" \ -e "s|@INTLTOOL_PERL@|${INTLTOOL_PERL}|g" \ < ${ac_aux_dir}/${file}.in > ${file}.out if cmp -s ${file} ${file}.out 2>/dev/null; then rm -f ${file}.out else mv -f ${file}.out ${file} fi chmod ugo+x ${file} chmod u+w ${file} done ], [INTLTOOL_PERL='${INTLTOOL_PERL}' ac_aux_dir='${ac_aux_dir}' prefix="$prefix" exec_prefix="$exec_prefix" INTLTOOL_LIBDIR="$libdir" INTLTOOL_EXTRACT='${INTLTOOL_EXTRACT}' INTLTOOL_ICONV='${INTLTOOL_ICONV}' INTLTOOL_MSGFMT='${INTLTOOL_MSGFMT}' INTLTOOL_MSGMERGE='${INTLTOOL_MSGMERGE}' INTLTOOL_XGETTEXT='${INTLTOOL_XGETTEXT}']) ]) # IT_PO_SUBDIR(DIRNAME) # --------------------- # All po subdirs have to be declared with this macro; the subdir "po" is # declared by IT_PROG_INTLTOOL. # AC_DEFUN([IT_PO_SUBDIR], [AC_PREREQ([2.53])dnl We use ac_top_srcdir inside AC_CONFIG_COMMANDS. dnl dnl The following CONFIG_COMMANDS should be exetuted at the very end dnl of config.status. AC_CONFIG_COMMANDS_PRE([ AC_CONFIG_COMMANDS([$1/stamp-it], [ rm -f "$1/stamp-it" "$1/stamp-it.tmp" "$1/POTFILES" "$1/Makefile.tmp" >"$1/stamp-it.tmp" [sed '/^#/d s/^[[].*] *// /^[ ]*$/d '"s|^| $ac_top_srcdir/|" \ "$srcdir/$1/POTFILES.in" | sed '$!s/$/ \\/' >"$1/POTFILES" ] if test ! -f "$1/Makefile"; then AC_MSG_ERROR([$1/Makefile is not ready.]) fi mv "$1/Makefile" "$1/Makefile.tmp" [sed '/^POTFILES =/,/[^\\]$/ { /^POTFILES =/!d r $1/POTFILES } ' "$1/Makefile.tmp" >"$1/Makefile"] rm -f "$1/Makefile.tmp" mv "$1/stamp-it.tmp" "$1/stamp-it" ]) ])dnl ]) # deprecated macros AU_ALIAS([AC_PROG_INTLTOOL], [IT_PROG_INTLTOOL]) # A hint is needed for aclocal from Automake <= 1.9.4: # AC_DEFUN([AC_PROG_INTLTOOL], ...) # pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*- # # Copyright © 2004 Scott James Remnant . # # 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 2 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, write to the Free Software # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. # PKG_PROG_PKG_CONFIG([MIN-VERSION]) # ---------------------------------- AC_DEFUN([PKG_PROG_PKG_CONFIG], [m4_pattern_forbid([^_?PKG_[A-Z_]+$]) m4_pattern_allow([^PKG_CONFIG(_PATH)?$]) AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])dnl if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then AC_PATH_TOOL([PKG_CONFIG], [pkg-config]) fi if test -n "$PKG_CONFIG"; then _pkg_min_version=m4_default([$1], [0.9.0]) AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version]) if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then AC_MSG_RESULT([yes]) else AC_MSG_RESULT([no]) PKG_CONFIG="" fi fi[]dnl ])# PKG_PROG_PKG_CONFIG # PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) # # Check to see whether a particular set of modules exists. Similar # to PKG_CHECK_MODULES(), but does not set variables or print errors. # # # Similar to PKG_CHECK_MODULES, make sure that the first instance of # this or PKG_CHECK_MODULES is called, or make sure to call # PKG_CHECK_EXISTS manually # -------------------------------------------------------------- AC_DEFUN([PKG_CHECK_EXISTS], [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl if test -n "$PKG_CONFIG" && \ AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then m4_ifval([$2], [$2], [:]) m4_ifvaln([$3], [else $3])dnl fi]) # _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES]) # --------------------------------------------- m4_define([_PKG_CONFIG], [if test -n "$PKG_CONFIG"; then if test -n "$$1"; then pkg_cv_[]$1="$$1" else PKG_CHECK_EXISTS([$3], [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`], [pkg_failed=yes]) fi else pkg_failed=untried fi[]dnl ])# _PKG_CONFIG # _PKG_SHORT_ERRORS_SUPPORTED # ----------------------------- AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED], [AC_REQUIRE([PKG_PROG_PKG_CONFIG]) if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi[]dnl ])# _PKG_SHORT_ERRORS_SUPPORTED # PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND], # [ACTION-IF-NOT-FOUND]) # # # Note that if there is a possibility the first call to # PKG_CHECK_MODULES might not happen, you should be sure to include an # explicit call to PKG_PROG_PKG_CONFIG in your configure.ac # # # -------------------------------------------------------------- AC_DEFUN([PKG_CHECK_MODULES], [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl pkg_failed=no AC_MSG_CHECKING([for $1]) _PKG_CONFIG([$1][_CFLAGS], [cflags], [$2]) _PKG_CONFIG([$1][_LIBS], [libs], [$2]) m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS and $1[]_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details.]) if test $pkg_failed = yes; then _PKG_SHORT_ERRORS_SUPPORTED if test $_pkg_short_errors_supported = yes; then $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "$2"` else $1[]_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$2"` fi # Put the nasty error message in config.log where it belongs echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD ifelse([$4], , [AC_MSG_ERROR(dnl [Package requirements ($2) were not met: $$1_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. _PKG_TEXT ])], [$4]) elif test $pkg_failed = untried; then ifelse([$4], , [AC_MSG_FAILURE(dnl [The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. _PKG_TEXT To get pkg-config, see .])], [$4]) else $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS $1[]_LIBS=$pkg_cv_[]$1[]_LIBS AC_MSG_RESULT([yes]) ifelse([$3], , :, [$3]) fi[]dnl ])# PKG_CHECK_MODULES # Copyright (C) 2002, 2003, 2005 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_AUTOMAKE_VERSION(VERSION) # ---------------------------- # Automake X.Y traces this macro to ensure aclocal.m4 has been # generated from the m4 files accompanying Automake X.Y. AC_DEFUN([AM_AUTOMAKE_VERSION], [am__api_version="1.9"]) # AM_SET_CURRENT_AUTOMAKE_VERSION # ------------------------------- # Call AM_AUTOMAKE_VERSION so it can be traced. # This function is AC_REQUIREd by AC_INIT_AUTOMAKE. AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], [AM_AUTOMAKE_VERSION([1.9.6])]) # AM_AUX_DIR_EXPAND -*- Autoconf -*- # Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets # $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to # `$srcdir', `$srcdir/..', or `$srcdir/../..'. # # Of course, Automake must honor this variable whenever it calls a # tool from the auxiliary directory. The problem is that $srcdir (and # therefore $ac_aux_dir as well) can be either absolute or relative, # depending on how configure is run. This is pretty annoying, since # it makes $ac_aux_dir quite unusable in subdirectories: in the top # source directory, any form will work fine, but in subdirectories a # relative path needs to be adjusted first. # # $ac_aux_dir/missing # fails when called from a subdirectory if $ac_aux_dir is relative # $top_srcdir/$ac_aux_dir/missing # fails if $ac_aux_dir is absolute, # fails when called from a subdirectory in a VPATH build with # a relative $ac_aux_dir # # The reason of the latter failure is that $top_srcdir and $ac_aux_dir # are both prefixed by $srcdir. In an in-source build this is usually # harmless because $srcdir is `.', but things will broke when you # start a VPATH build or use an absolute $srcdir. # # So we could use something similar to $top_srcdir/$ac_aux_dir/missing, # iff we strip the leading $srcdir from $ac_aux_dir. That would be: # am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"` # and then we would define $MISSING as # MISSING="\${SHELL} $am_aux_dir/missing" # This will work as long as MISSING is not called from configure, because # unfortunately $(top_srcdir) has no meaning in configure. # However there are other variables, like CC, which are often used in # configure, and could therefore not use this "fixed" $ac_aux_dir. # # Another solution, used here, is to always expand $ac_aux_dir to an # absolute PATH. The drawback is that using absolute paths prevent a # configured tree to be moved without reconfiguration. AC_DEFUN([AM_AUX_DIR_EXPAND], [dnl Rely on autoconf to set up CDPATH properly. AC_PREREQ([2.50])dnl # expand $ac_aux_dir to an absolute path am_aux_dir=`cd $ac_aux_dir && pwd` ]) # Copyright (C) 1996, 1997, 1999, 2000, 2001, 2002, 2003, 2005 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 4 # This was merged into AC_PROG_CC in Autoconf. AU_DEFUN([AM_PROG_CC_STDC], [AC_PROG_CC AC_DIAGNOSE([obsolete], [$0: your code should no longer depend upon `am_cv_prog_cc_stdc', but upon `ac_cv_prog_cc_stdc'. Remove this warning and the assignment when you adjust the code. You can also remove the above call to AC_PROG_CC if you already called it elsewhere.]) am_cv_prog_cc_stdc=$ac_cv_prog_cc_stdc ]) AU_DEFUN([fp_PROG_CC_STDC]) # AM_CONDITIONAL -*- Autoconf -*- # Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 7 # AM_CONDITIONAL(NAME, SHELL-CONDITION) # ------------------------------------- # Define a conditional. AC_DEFUN([AM_CONDITIONAL], [AC_PREREQ(2.52)dnl ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])], [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl AC_SUBST([$1_TRUE]) AC_SUBST([$1_FALSE]) if $2; then $1_TRUE= $1_FALSE='#' else $1_TRUE='#' $1_FALSE= fi AC_CONFIG_COMMANDS_PRE( [if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then AC_MSG_ERROR([[conditional "$1" was never defined. Usually this means the macro was only invoked conditionally.]]) fi])]) # Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 8 # There are a few dirty hacks below to avoid letting `AC_PROG_CC' be # written in clear, in which case automake, when reading aclocal.m4, # will think it sees a *use*, and therefore will trigger all it's # C support machinery. Also note that it means that autoscan, seeing # CC etc. in the Makefile, will ask for an AC_PROG_CC use... # _AM_DEPENDENCIES(NAME) # ---------------------- # See how the compiler implements dependency checking. # NAME is "CC", "CXX", "GCJ", or "OBJC". # We try a few techniques and use that to set a single cache variable. # # We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was # modified to invoke _AM_DEPENDENCIES(CC); we would have a circular # dependency, and given that the user is not expected to run this macro, # just rely on AC_PROG_CC. AC_DEFUN([_AM_DEPENDENCIES], [AC_REQUIRE([AM_SET_DEPDIR])dnl AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl AC_REQUIRE([AM_MAKE_INCLUDE])dnl AC_REQUIRE([AM_DEP_TRACK])dnl ifelse([$1], CC, [depcc="$CC" am_compiler_list=], [$1], CXX, [depcc="$CXX" am_compiler_list=], [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'], [$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'], [depcc="$$1" am_compiler_list=]) AC_CACHE_CHECK([dependency style of $depcc], [am_cv_$1_dependencies_compiler_type], [if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then # We make a subdir and do the tests there. Otherwise we can end up # making bogus files that we don't know about and never remove. For # instance it was reported that on HP-UX the gcc test will end up # making a dummy file named `D' -- because `-MD' means `put the output # in D'. mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. cp "$am_depcomp" conftest.dir cd conftest.dir # We will build objects and dependencies in a subdirectory because # it helps to detect inapplicable dependency modes. For instance # both Tru64's cc and ICC support -MD to output dependencies as a # side effect of compilation, but ICC will put the dependencies in # the current directory while Tru64 will put them in the object # directory. mkdir sub am_cv_$1_dependencies_compiler_type=none if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp` fi for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers # like to wrap large dependency lists on column 80 (with \), and # we should not choose a depcomp mode which is confused by this. # # We need to recreate these files for each test, as the compiler may # overwrite some of them when testing with obscure command lines. # This happens at least with the AIX C compiler. : > sub/conftest.c for i in 1 2 3 4 5 6; do echo '#include "conftst'$i'.h"' >> sub/conftest.c # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with # Solaris 8's {/usr,}/bin/sh. touch sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf case $depmode in nosideeffect) # after this tag, mechanisms are not by side-effect, so they'll # only be used when explicitly requested if test "x$enable_dependency_tracking" = xyes; then continue else break fi ;; none) break ;; esac # We check with `-c' and `-o' for the sake of the "dashmstdout" # mode. It turns out that the SunPro C++ compiler does not properly # handle `-M -o', and we need to detect this. if depmode=$depmode \ source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings # or remarks (even with -Werror). So we grep stderr for any message # that says an option was ignored or not supported. # When given -MP, icc 7.0 and 7.1 complain thusly: # icc: Command line warning: ignoring option '-M'; no argument required # The diagnosis changed in icc 8.0: # icc: Command line remark: option '-MP' not supported if (grep 'ignoring option' conftest.err || grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else am_cv_$1_dependencies_compiler_type=$depmode break fi fi done cd .. rm -rf conftest.dir else am_cv_$1_dependencies_compiler_type=none fi ]) AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type]) AM_CONDITIONAL([am__fastdep$1], [ test "x$enable_dependency_tracking" != xno \ && test "$am_cv_$1_dependencies_compiler_type" = gcc3]) ]) # AM_SET_DEPDIR # ------------- # Choose a directory name for dependency files. # This macro is AC_REQUIREd in _AM_DEPENDENCIES AC_DEFUN([AM_SET_DEPDIR], [AC_REQUIRE([AM_SET_LEADING_DOT])dnl AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl ]) # AM_DEP_TRACK # ------------ AC_DEFUN([AM_DEP_TRACK], [AC_ARG_ENABLE(dependency-tracking, [ --disable-dependency-tracking speeds up one-time build --enable-dependency-tracking do not reject slow dependency extractors]) if test "x$enable_dependency_tracking" != xno; then am_depcomp="$ac_aux_dir/depcomp" AMDEPBACKSLASH='\' fi AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno]) AC_SUBST([AMDEPBACKSLASH]) ]) # Generate code to set up dependency tracking. -*- Autoconf -*- # Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. #serial 3 # _AM_OUTPUT_DEPENDENCY_COMMANDS # ------------------------------ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], [for mf in $CONFIG_FILES; do # Strip MF so we end up with the name of the file. mf=`echo "$mf" | sed -e 's/:.*$//'` # Check whether this is an Automake generated Makefile or not. # We used to match only the files named `Makefile.in', but # some people rename them; so instead we look at the file content. # Grep'ing the first line is not enough: some people post-process # each Makefile.in and add a new line on top of each file to say so. # So let's grep whole file. if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then dirpart=`AS_DIRNAME("$mf")` else continue fi # Extract the definition of DEPDIR, am__include, and am__quote # from the Makefile without running `make'. DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` test -z "$DEPDIR" && continue am__include=`sed -n 's/^am__include = //p' < "$mf"` test -z "am__include" && continue am__quote=`sed -n 's/^am__quote = //p' < "$mf"` # When using ansi2knr, U may be empty or an underscore; expand it U=`sed -n 's/^U = //p' < "$mf"` # Find all dependency output files, they are included files with # $(DEPDIR) in their names. We invoke sed twice because it is the # simplest approach to changing $(DEPDIR) to its actual value in the # expansion. for file in `sed -n " s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do # Make sure the directory exists. test -f "$dirpart/$file" && continue fdir=`AS_DIRNAME(["$file"])` AS_MKDIR_P([$dirpart/$fdir]) # echo "creating $dirpart/$file" echo '# dummy' > "$dirpart/$file" done done ])# _AM_OUTPUT_DEPENDENCY_COMMANDS # AM_OUTPUT_DEPENDENCY_COMMANDS # ----------------------------- # This macro should only be invoked once -- use via AC_REQUIRE. # # This code is only required when automatic dependency tracking # is enabled. FIXME. This creates each `.P' file that we will # need in order to bootstrap the dependency handling code. AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS], [AC_CONFIG_COMMANDS([depfiles], [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS], [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"]) ]) # Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 8 # AM_CONFIG_HEADER is obsolete. It has been replaced by AC_CONFIG_HEADERS. AU_DEFUN([AM_CONFIG_HEADER], [AC_CONFIG_HEADERS($@)]) # Do all the work for Automake. -*- Autoconf -*- # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 12 # This macro actually does too much. Some checks are only needed if # your package does certain things. But this isn't really a big deal. # AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE]) # AM_INIT_AUTOMAKE([OPTIONS]) # ----------------------------------------------- # The call with PACKAGE and VERSION arguments is the old style # call (pre autoconf-2.50), which is being phased out. PACKAGE # and VERSION should now be passed to AC_INIT and removed from # the call to AM_INIT_AUTOMAKE. # We support both call styles for the transition. After # the next Automake release, Autoconf can make the AC_INIT # arguments mandatory, and then we can depend on a new Autoconf # release and drop the old call support. AC_DEFUN([AM_INIT_AUTOMAKE], [AC_PREREQ([2.58])dnl dnl Autoconf wants to disallow AM_ names. We explicitly allow dnl the ones we care about. m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl AC_REQUIRE([AC_PROG_INSTALL])dnl # test to see if srcdir already configured if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) fi # test whether we have cygpath if test -z "$CYGPATH_W"; then if (cygpath --version) >/dev/null 2>/dev/null; then CYGPATH_W='cygpath -w' else CYGPATH_W=echo fi fi AC_SUBST([CYGPATH_W]) # Define the identity of the package. dnl Distinguish between old-style and new-style calls. m4_ifval([$2], [m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl AC_SUBST([PACKAGE], [$1])dnl AC_SUBST([VERSION], [$2])], [_AM_SET_OPTIONS([$1])dnl AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl _AM_IF_OPTION([no-define],, [AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package]) AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl # Some tools Automake needs. AC_REQUIRE([AM_SANITY_CHECK])dnl AC_REQUIRE([AC_ARG_PROGRAM])dnl AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version}) AM_MISSING_PROG(AUTOCONF, autoconf) AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version}) AM_MISSING_PROG(AUTOHEADER, autoheader) AM_MISSING_PROG(MAKEINFO, makeinfo) AM_PROG_INSTALL_SH AM_PROG_INSTALL_STRIP AC_REQUIRE([AM_PROG_MKDIR_P])dnl # We need awk for the "check" target. The system "awk" is bad on # some platforms. AC_REQUIRE([AC_PROG_AWK])dnl AC_REQUIRE([AC_PROG_MAKE_SET])dnl AC_REQUIRE([AM_SET_LEADING_DOT])dnl _AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])], [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])], [_AM_PROG_TAR([v7])])]) _AM_IF_OPTION([no-dependencies],, [AC_PROVIDE_IFELSE([AC_PROG_CC], [_AM_DEPENDENCIES(CC)], [define([AC_PROG_CC], defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl AC_PROVIDE_IFELSE([AC_PROG_CXX], [_AM_DEPENDENCIES(CXX)], [define([AC_PROG_CXX], defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl ]) ]) # When config.status generates a header, we must update the stamp-h file. # This file resides in the same directory as the config header # that is generated. The stamp files are numbered to have different names. # Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the # loop where config.status creates the headers, so we can generate # our stamp files there. AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK], [# Compute $1's index in $config_headers. _am_stamp_count=1 for _am_header in $config_headers :; do case $_am_header in $1 | $1:* ) break ;; * ) _am_stamp_count=`expr $_am_stamp_count + 1` ;; esac done echo "timestamp for $1" >`AS_DIRNAME([$1])`/stamp-h[]$_am_stamp_count]) # Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_PROG_INSTALL_SH # ------------------ # Define $install_sh. AC_DEFUN([AM_PROG_INSTALL_SH], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl install_sh=${install_sh-"$am_aux_dir/install-sh"} AC_SUBST(install_sh)]) # Copyright (C) 2003, 2005 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 2 # Check whether the underlying file-system supports filenames # with a leading dot. For instance MS-DOS doesn't. AC_DEFUN([AM_SET_LEADING_DOT], [rm -rf .tst 2>/dev/null mkdir .tst 2>/dev/null if test -d .tst; then am__leading_dot=. else am__leading_dot=_ fi rmdir .tst 2>/dev/null AC_SUBST([am__leading_dot])]) # Check to see how 'make' treats includes. -*- Autoconf -*- # Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 3 # AM_MAKE_INCLUDE() # ----------------- # Check to see how make treats includes. AC_DEFUN([AM_MAKE_INCLUDE], [am_make=${MAKE-make} cat > confinc << 'END' am__doit: @echo done .PHONY: am__doit END # If we don't find an include directive, just comment out the code. AC_MSG_CHECKING([for style of include used by $am_make]) am__include="#" am__quote= _am_result=none # First try GNU make style include. echo "include confinc" > confmf # We grep out `Entering directory' and `Leaving directory' # messages which can occur if `w' ends up in MAKEFLAGS. # In particular we don't look at `^make:' because GNU make might # be invoked under some other name (usually "gmake"), in which # case it prints its new name instead of `make'. if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then am__include=include am__quote= _am_result=GNU fi # Now try BSD make style include. if test "$am__include" = "#"; then echo '.include "confinc"' > confmf if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then am__include=.include am__quote="\"" _am_result=BSD fi fi AC_SUBST([am__include]) AC_SUBST([am__quote]) AC_MSG_RESULT([$_am_result]) rm -f confinc confmf ]) # Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- # Copyright (C) 1997, 1999, 2000, 2001, 2003, 2005 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 4 # AM_MISSING_PROG(NAME, PROGRAM) # ------------------------------ AC_DEFUN([AM_MISSING_PROG], [AC_REQUIRE([AM_MISSING_HAS_RUN]) $1=${$1-"${am_missing_run}$2"} AC_SUBST($1)]) # AM_MISSING_HAS_RUN # ------------------ # Define MISSING if not defined so far and test if it supports --run. # If it does, set am_missing_run to use it, otherwise, to nothing. AC_DEFUN([AM_MISSING_HAS_RUN], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing" # Use eval to expand $SHELL if eval "$MISSING --run true"; then am_missing_run="$MISSING --run " else am_missing_run= AC_MSG_WARN([`missing' script is too old or missing]) fi ]) # Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_PROG_MKDIR_P # --------------- # Check whether `mkdir -p' is supported, fallback to mkinstalldirs otherwise. # # Automake 1.8 used `mkdir -m 0755 -p --' to ensure that directories # created by `make install' are always world readable, even if the # installer happens to have an overly restrictive umask (e.g. 077). # This was a mistake. There are at least two reasons why we must not # use `-m 0755': # - it causes special bits like SGID to be ignored, # - it may be too restrictive (some setups expect 775 directories). # # Do not use -m 0755 and let people choose whatever they expect by # setting umask. # # We cannot accept any implementation of `mkdir' that recognizes `-p'. # Some implementations (such as Solaris 8's) are not thread-safe: if a # parallel make tries to run `mkdir -p a/b' and `mkdir -p a/c' # concurrently, both version can detect that a/ is missing, but only # one can create it and the other will error out. Consequently we # restrict ourselves to GNU make (using the --version option ensures # this.) AC_DEFUN([AM_PROG_MKDIR_P], [if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then # We used to keeping the `.' as first argument, in order to # allow $(mkdir_p) to be used without argument. As in # $(mkdir_p) $(somedir) # where $(somedir) is conditionally defined. However this is wrong # for two reasons: # 1. if the package is installed by a user who cannot write `.' # make install will fail, # 2. the above comment should most certainly read # $(mkdir_p) $(DESTDIR)$(somedir) # so it does not work when $(somedir) is undefined and # $(DESTDIR) is not. # To support the latter case, we have to write # test -z "$(somedir)" || $(mkdir_p) $(DESTDIR)$(somedir), # so the `.' trick is pointless. mkdir_p='mkdir -p --' else # On NextStep and OpenStep, the `mkdir' command does not # recognize any option. It will interpret all options as # directories to create, and then abort because `.' already # exists. for d in ./-p ./--version; do test -d $d && rmdir $d done # $(mkinstalldirs) is defined by Automake if mkinstalldirs exists. if test -f "$ac_aux_dir/mkinstalldirs"; then mkdir_p='$(mkinstalldirs)' else mkdir_p='$(install_sh) -d' fi fi AC_SUBST([mkdir_p])]) # Helper functions for option handling. -*- Autoconf -*- # Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 3 # _AM_MANGLE_OPTION(NAME) # ----------------------- AC_DEFUN([_AM_MANGLE_OPTION], [[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])]) # _AM_SET_OPTION(NAME) # ------------------------------ # Set option NAME. Presently that only means defining a flag for this option. AC_DEFUN([_AM_SET_OPTION], [m4_define(_AM_MANGLE_OPTION([$1]), 1)]) # _AM_SET_OPTIONS(OPTIONS) # ---------------------------------- # OPTIONS is a space-separated list of Automake options. AC_DEFUN([_AM_SET_OPTIONS], [AC_FOREACH([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])]) # _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET]) # ------------------------------------------- # Execute IF-SET if OPTION is set, IF-NOT-SET otherwise. AC_DEFUN([_AM_IF_OPTION], [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])]) # Check to make sure that the build environment is sane. -*- Autoconf -*- # Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 4 # AM_SANITY_CHECK # --------------- AC_DEFUN([AM_SANITY_CHECK], [AC_MSG_CHECKING([whether build environment is sane]) # Just in case sleep 1 echo timestamp > conftest.file # Do `set' in a subshell so we don't clobber the current shell's # arguments. Must try -L first in case configure is actually a # symlink; some systems play weird games with the mod time of symlinks # (eg FreeBSD returns the mod time of the symlink's containing # directory). if ( set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null` if test "$[*]" = "X"; then # -L didn't work. set X `ls -t $srcdir/configure conftest.file` fi rm -f conftest.file if test "$[*]" != "X $srcdir/configure conftest.file" \ && test "$[*]" != "X conftest.file $srcdir/configure"; then # If neither matched, then we have a broken ls. This can happen # if, for instance, CONFIG_SHELL is bash and it inherits a # broken ls alias from the environment. This has actually # happened. Such a system could not be considered "sane". AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken alias in your environment]) fi test "$[2]" = conftest.file ) then # Ok. : else AC_MSG_ERROR([newly created file is older than distributed files! Check your system clock]) fi AC_MSG_RESULT(yes)]) # Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_PROG_INSTALL_STRIP # --------------------- # One issue with vendor `install' (even GNU) is that you can't # specify the program used to strip binaries. This is especially # annoying in cross-compiling environments, where the build's strip # is unlikely to handle the host's binaries. # Fortunately install-sh will honor a STRIPPROG variable, so we # always use install-sh in `make install-strip', and initialize # STRIPPROG with the value of the STRIP variable (set by the user). AC_DEFUN([AM_PROG_INSTALL_STRIP], [AC_REQUIRE([AM_PROG_INSTALL_SH])dnl # Installed binaries are usually stripped using `strip' when the user # run `make install-strip'. However `strip' might not be the right # tool to use in cross-compilation environments, therefore Automake # will honor the `STRIP' environment variable to overrule this program. dnl Don't test for $cross_compiling = yes, because it might be `maybe'. if test "$cross_compiling" != no; then AC_CHECK_TOOL([STRIP], [strip], :) fi INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s" AC_SUBST([INSTALL_STRIP_PROGRAM])]) # Check how to create a tarball. -*- Autoconf -*- # Copyright (C) 2004, 2005 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 2 # _AM_PROG_TAR(FORMAT) # -------------------- # Check how to create a tarball in format FORMAT. # FORMAT should be one of `v7', `ustar', or `pax'. # # Substitute a variable $(am__tar) that is a command # writing to stdout a FORMAT-tarball containing the directory # $tardir. # tardir=directory && $(am__tar) > result.tar # # Substitute a variable $(am__untar) that extract such # a tarball read from stdin. # $(am__untar) < result.tar AC_DEFUN([_AM_PROG_TAR], [# Always define AMTAR for backward compatibility. AM_MISSING_PROG([AMTAR], [tar]) m4_if([$1], [v7], [am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'], [m4_case([$1], [ustar],, [pax],, [m4_fatal([Unknown tar format])]) AC_MSG_CHECKING([how to create a $1 tar archive]) # Loop over all known methods to create a tar archive until one works. _am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none' _am_tools=${am_cv_prog_tar_$1-$_am_tools} # Do not fold the above two line into one, because Tru64 sh and # Solaris sh will not grok spaces in the rhs of `-'. for _am_tool in $_am_tools do case $_am_tool in gnutar) for _am_tar in tar gnutar gtar; do AM_RUN_LOG([$_am_tar --version]) && break done am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"' am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"' am__untar="$_am_tar -xf -" ;; plaintar) # Must skip GNU tar: if it does not support --format= it doesn't create # ustar tarball either. (tar --version) >/dev/null 2>&1 && continue am__tar='tar chf - "$$tardir"' am__tar_='tar chf - "$tardir"' am__untar='tar xf -' ;; pax) am__tar='pax -L -x $1 -w "$$tardir"' am__tar_='pax -L -x $1 -w "$tardir"' am__untar='pax -r' ;; cpio) am__tar='find "$$tardir" -print | cpio -o -H $1 -L' am__tar_='find "$tardir" -print | cpio -o -H $1 -L' am__untar='cpio -i -H $1 -d' ;; none) am__tar=false am__tar_=false am__untar=false ;; esac # If the value was cached, stop now. We just wanted to have am__tar # and am__untar set. test -n "${am_cv_prog_tar_$1}" && break # tar/untar a dummy directory, and stop if the command works rm -rf conftest.dir mkdir conftest.dir echo GrepMe > conftest.dir/file AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar]) rm -rf conftest.dir if test -s conftest.tar; then AM_RUN_LOG([$am__untar /dev/null 2>&1 && break fi done rm -rf conftest.dir AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool]) AC_MSG_RESULT([$am_cv_prog_tar_$1])]) AC_SUBST([am__tar]) AC_SUBST([am__untar]) ]) # _AM_PROG_TAR atomix-2.14.0/Makefile.am0000644000175000017500000000152210362552152012055 00000000000000SUBDIRS = po src level themes logodir = $(pkgdatadir) logo_DATA = atomix-logo.png icondir = $(datadir)/pixmaps icon_DATA = atomix-icon.png scoredir=$(localstatedir)/games appdir = $(datadir)/applications app_in_files = atomix.desktop.in app_DATA = $(app_in_files:.desktop.in=.desktop) EXTRA_DIST = \ intltool-extract.in \ intltool-merge.in \ intltool-update.in \ $(app_in_files) \ $(logo_DATA) \ $(icon_DATA) DISTCLEANFILES = \ intltool-extract \ intltool-merge \ intltool-update \ $(app_DATA) @INTLTOOL_DESKTOP_RULE@ install-data-local: -$(mkinstalldirs) $(DESTDIR)$(scoredir) -touch $(DESTDIR)$(scoredir)/atomix.scores -chown games.games $(DESTDIR)$(scoredir)/atomix.scores -chmod 664 $(DESTDIR)$(scoredir)/atomix.scores -chgrp games $(DESTDIR)$(bindir)/atomix && chmod 2755 $(DESTDIR)$(bindir)/atomix atomix-2.14.0/Makefile.in0000644000175000017500000005546410404437655012113 00000000000000# Makefile.in generated by automake 1.9.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ srcdir = @srcdir@ top_srcdir = @top_srcdir@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ top_builddir = . am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd INSTALL = @INSTALL@ install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : subdir = . DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \ $(srcdir)/Makefile.in $(srcdir)/config.h.in \ $(top_srcdir)/configure AUTHORS COPYING ChangeLog INSTALL NEWS \ acconfig.h depcomp install-sh missing mkinstalldirs ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ configure.lineno configure.status.lineno mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = config.h CONFIG_CLEAN_FILES = SOURCES = DIST_SOURCES = RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ html-recursive info-recursive install-data-recursive \ install-exec-recursive install-info-recursive \ install-recursive installcheck-recursive installdirs-recursive \ pdf-recursive ps-recursive uninstall-info-recursive \ uninstall-recursive am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; am__strip_dir = `echo $$p | sed -e 's|^.*/||'`; am__installdirs = "$(DESTDIR)$(appdir)" "$(DESTDIR)$(icondir)" \ "$(DESTDIR)$(logodir)" appDATA_INSTALL = $(INSTALL_DATA) iconDATA_INSTALL = $(INSTALL_DATA) logoDATA_INSTALL = $(INSTALL_DATA) DATA = $(app_DATA) $(icon_DATA) $(logo_DATA) ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) distdir = $(PACKAGE)-$(VERSION) top_distdir = $(distdir) am__remove_distdir = \ { test ! -d $(distdir) \ || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \ && rm -fr $(distdir); }; } DIST_ARCHIVES = $(distdir).tar.gz GZIP_ENV = --best distuninstallcheck_listfiles = find . -type f -print distcleancheck_listfiles = find . -type f -print ACLOCAL = @ACLOCAL@ AMDEP_FALSE = @AMDEP_FALSE@ AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ ATOMIX_CFLAGS = @ATOMIX_CFLAGS@ ATOMIX_LIBS = @ATOMIX_LIBS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ EXTRA_WARNING_CFLAGS = @EXTRA_WARNING_CFLAGS@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@ INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@ INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_ICONV = @INTLTOOL_ICONV@ INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@ INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_MSGFMT = @INTLTOOL_MSGFMT@ INTLTOOL_MSGMERGE = @INTLTOOL_MSGMERGE@ INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@ INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@ INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@ INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@ INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@ INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@ INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@ INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@ INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@ INTLTOOL_XGETTEXT = @INTLTOOL_XGETTEXT@ INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@ INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ RANLIB = @RANLIB@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ ac_ct_CC = @ac_ct_CC@ ac_ct_RANLIB = @ac_ct_RANLIB@ ac_ct_STRIP = @ac_ct_STRIP@ ac_pt_PKG_CONFIG = @ac_pt_PKG_CONFIG@ am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build_alias = @build_alias@ datadir = @datadir@ exec_prefix = @exec_prefix@ host_alias = @host_alias@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ prefix = @prefix@ program_transform_name = @program_transform_name@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ SUBDIRS = po src level themes logodir = $(pkgdatadir) logo_DATA = atomix-logo.png icondir = $(datadir)/pixmaps icon_DATA = atomix-icon.png scoredir = $(localstatedir)/games appdir = $(datadir)/applications app_in_files = atomix.desktop.in app_DATA = $(app_in_files:.desktop.in=.desktop) EXTRA_DIST = \ intltool-extract.in \ intltool-merge.in \ intltool-update.in \ $(app_in_files) \ $(logo_DATA) \ $(icon_DATA) DISTCLEANFILES = \ intltool-extract \ intltool-merge \ intltool-update \ $(app_DATA) all: config.h $(MAKE) $(AM_MAKEFLAGS) all-recursive .SUFFIXES: am--refresh: @: $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ echo ' cd $(srcdir) && $(AUTOMAKE) --gnu '; \ cd $(srcdir) && $(AUTOMAKE) --gnu \ && exit 0; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \ cd $(top_srcdir) && \ $(AUTOMAKE) --gnu Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ echo ' $(SHELL) ./config.status'; \ $(SHELL) ./config.status;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) $(SHELL) ./config.status --recheck $(top_srcdir)/configure: $(am__configure_deps) cd $(srcdir) && $(AUTOCONF) $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) config.h: stamp-h1 @if test ! -f $@; then \ rm -f stamp-h1; \ $(MAKE) stamp-h1; \ else :; fi stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status @rm -f stamp-h1 cd $(top_builddir) && $(SHELL) ./config.status config.h $(srcdir)/config.h.in: $(am__configure_deps) $(top_srcdir)/acconfig.h cd $(top_srcdir) && $(AUTOHEADER) rm -f stamp-h1 touch $@ distclean-hdr: -rm -f config.h stamp-h1 uninstall-info-am: install-appDATA: $(app_DATA) @$(NORMAL_INSTALL) test -z "$(appdir)" || $(mkdir_p) "$(DESTDIR)$(appdir)" @list='$(app_DATA)'; for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ f=$(am__strip_dir) \ echo " $(appDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(appdir)/$$f'"; \ $(appDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(appdir)/$$f"; \ done uninstall-appDATA: @$(NORMAL_UNINSTALL) @list='$(app_DATA)'; for p in $$list; do \ f=$(am__strip_dir) \ echo " rm -f '$(DESTDIR)$(appdir)/$$f'"; \ rm -f "$(DESTDIR)$(appdir)/$$f"; \ done install-iconDATA: $(icon_DATA) @$(NORMAL_INSTALL) test -z "$(icondir)" || $(mkdir_p) "$(DESTDIR)$(icondir)" @list='$(icon_DATA)'; for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ f=$(am__strip_dir) \ echo " $(iconDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(icondir)/$$f'"; \ $(iconDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(icondir)/$$f"; \ done uninstall-iconDATA: @$(NORMAL_UNINSTALL) @list='$(icon_DATA)'; for p in $$list; do \ f=$(am__strip_dir) \ echo " rm -f '$(DESTDIR)$(icondir)/$$f'"; \ rm -f "$(DESTDIR)$(icondir)/$$f"; \ done install-logoDATA: $(logo_DATA) @$(NORMAL_INSTALL) test -z "$(logodir)" || $(mkdir_p) "$(DESTDIR)$(logodir)" @list='$(logo_DATA)'; for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ f=$(am__strip_dir) \ echo " $(logoDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(logodir)/$$f'"; \ $(logoDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(logodir)/$$f"; \ done uninstall-logoDATA: @$(NORMAL_UNINSTALL) @list='$(logo_DATA)'; for p in $$list; do \ f=$(am__strip_dir) \ echo " rm -f '$(DESTDIR)$(logodir)/$$f'"; \ rm -f "$(DESTDIR)$(logodir)/$$f"; \ done # This directory's subdirectories are mostly independent; you can cd # into them and run `make' without going through this Makefile. # To change the values of `make' variables: instead of editing Makefiles, # (1) if the variable is set in `config.status', edit `config.status' # (which will cause the Makefiles to be regenerated when you run `make'); # (2) otherwise, pass the desired values on the `make' command line. $(RECURSIVE_TARGETS): @failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ target=`echo $@ | sed s/-recursive//`; \ list='$(SUBDIRS)'; for subdir in $$list; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ dot_seen=yes; \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done; \ if test "$$dot_seen" = "no"; then \ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ fi; test -z "$$fail" mostlyclean-recursive clean-recursive distclean-recursive \ maintainer-clean-recursive: @failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ case "$@" in \ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ *) list='$(SUBDIRS)' ;; \ esac; \ rev=''; for subdir in $$list; do \ if test "$$subdir" = "."; then :; else \ rev="$$subdir $$rev"; \ fi; \ done; \ rev="$$rev ."; \ target=`echo $@ | sed s/-recursive//`; \ for subdir in $$rev; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done && test -z "$$fail" tags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ done ctags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ done ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'`; \ mkid -fID $$unique tags: TAGS TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ here=`pwd`; \ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ include_option=--etags-include; \ empty_fix=.; \ else \ include_option=--include; \ empty_fix=; \ fi; \ list='$(SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test ! -f $$subdir/TAGS || \ tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \ fi; \ done; \ list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$tags $$unique; \ fi ctags: CTAGS CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ here=`pwd`; \ list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'`; \ test -z "$(CTAGS_ARGS)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && cd $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) $$here distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) $(am__remove_distdir) mkdir $(distdir) $(mkdir_p) $(distdir)/po @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ list='$(DISTFILES)'; for file in $$list; do \ case $$file in \ $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ esac; \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ if test "$$dir" != "$$file" && test "$$dir" != "."; then \ dir="/$$dir"; \ $(mkdir_p) "$(distdir)$$dir"; \ else \ dir=''; \ fi; \ if test -d $$d/$$file; then \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ else \ test -f $(distdir)/$$file \ || cp -p $$d/$$file $(distdir)/$$file \ || exit 1; \ fi; \ done list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test -d "$(distdir)/$$subdir" \ || $(mkdir_p) "$(distdir)/$$subdir" \ || exit 1; \ distdir=`$(am__cd) $(distdir) && pwd`; \ top_distdir=`$(am__cd) $(top_distdir) && pwd`; \ (cd $$subdir && \ $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$$top_distdir" \ distdir="$$distdir/$$subdir" \ distdir) \ || exit 1; \ fi; \ done -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \ ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \ ! -type d ! -perm -400 -exec chmod a+r {} \; -o \ ! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \ || chmod -R a+r $(distdir) dist-gzip: distdir tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz $(am__remove_distdir) dist-bzip2: distdir tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2 $(am__remove_distdir) dist-tarZ: distdir tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z $(am__remove_distdir) dist-shar: distdir shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz $(am__remove_distdir) dist-zip: distdir -rm -f $(distdir).zip zip -rq $(distdir).zip $(distdir) $(am__remove_distdir) dist dist-all: distdir tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz $(am__remove_distdir) # This target untars the dist file and tries a VPATH configuration. Then # it guarantees that the distribution is self-contained by making another # tarfile. distcheck: dist case '$(DIST_ARCHIVES)' in \ *.tar.gz*) \ GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\ *.tar.bz2*) \ bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\ *.tar.Z*) \ uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ *.shar.gz*) \ GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\ *.zip*) \ unzip $(distdir).zip ;;\ esac chmod -R a-w $(distdir); chmod a+w $(distdir) mkdir $(distdir)/_build mkdir $(distdir)/_inst chmod a-w $(distdir) dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \ && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \ && cd $(distdir)/_build \ && ../configure --srcdir=.. --prefix="$$dc_install_base" \ $(DISTCHECK_CONFIGURE_FLAGS) \ && $(MAKE) $(AM_MAKEFLAGS) \ && $(MAKE) $(AM_MAKEFLAGS) dvi \ && $(MAKE) $(AM_MAKEFLAGS) check \ && $(MAKE) $(AM_MAKEFLAGS) install \ && $(MAKE) $(AM_MAKEFLAGS) installcheck \ && $(MAKE) $(AM_MAKEFLAGS) uninstall \ && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \ distuninstallcheck \ && chmod -R a-w "$$dc_install_base" \ && ({ \ (cd ../.. && umask 077 && mkdir "$$dc_destdir") \ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \ distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \ } || { rm -rf "$$dc_destdir"; exit 1; }) \ && rm -rf "$$dc_destdir" \ && $(MAKE) $(AM_MAKEFLAGS) dist \ && rm -rf $(DIST_ARCHIVES) \ && $(MAKE) $(AM_MAKEFLAGS) distcleancheck $(am__remove_distdir) @(echo "$(distdir) archives ready for distribution: "; \ list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \ sed -e '1{h;s/./=/g;p;x;}' -e '$${p;x;}' distuninstallcheck: @cd $(distuninstallcheck_dir) \ && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \ || { echo "ERROR: files left after uninstall:" ; \ if test -n "$(DESTDIR)"; then \ echo " (check DESTDIR support)"; \ fi ; \ $(distuninstallcheck_listfiles) ; \ exit 1; } >&2 distcleancheck: distclean @if test '$(srcdir)' = . ; then \ echo "ERROR: distcleancheck can only run from a VPATH build" ; \ exit 1 ; \ fi @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \ || { echo "ERROR: files left in build directory after distclean:" ; \ $(distcleancheck_listfiles) ; \ exit 1; } >&2 check-am: all-am check: check-recursive all-am: Makefile $(DATA) config.h installdirs: installdirs-recursive installdirs-am: for dir in "$(DESTDIR)$(appdir)" "$(DESTDIR)$(icondir)" "$(DESTDIR)$(logodir)"; do \ test -z "$$dir" || $(mkdir_p) "$$dir"; \ done install: install-recursive install-exec: install-exec-recursive install-data: install-data-recursive uninstall: uninstall-recursive install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-recursive install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-recursive clean-am: clean-generic mostlyclean-am distclean: distclean-recursive -rm -f $(am__CONFIG_DISTCLEAN_FILES) -rm -f Makefile distclean-am: clean-am distclean-generic distclean-hdr distclean-tags dvi: dvi-recursive dvi-am: html: html-recursive info: info-recursive info-am: install-data-am: install-appDATA install-data-local install-iconDATA \ install-logoDATA install-exec-am: install-info: install-info-recursive install-man: installcheck-am: maintainer-clean: maintainer-clean-recursive -rm -f $(am__CONFIG_DISTCLEAN_FILES) -rm -rf $(top_srcdir)/autom4te.cache -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-recursive mostlyclean-am: mostlyclean-generic pdf: pdf-recursive pdf-am: ps: ps-recursive ps-am: uninstall-am: uninstall-appDATA uninstall-iconDATA uninstall-info-am \ uninstall-logoDATA uninstall-info: uninstall-info-recursive .PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am am--refresh check \ check-am clean clean-generic clean-recursive ctags \ ctags-recursive dist dist-all dist-bzip2 dist-gzip dist-shar \ dist-tarZ dist-zip distcheck distclean distclean-generic \ distclean-hdr distclean-recursive distclean-tags \ distcleancheck distdir distuninstallcheck dvi dvi-am html \ html-am info info-am install install-am install-appDATA \ install-data install-data-am install-data-local install-exec \ install-exec-am install-iconDATA install-info install-info-am \ install-logoDATA install-man install-strip installcheck \ installcheck-am installdirs installdirs-am maintainer-clean \ maintainer-clean-generic maintainer-clean-recursive \ mostlyclean mostlyclean-generic mostlyclean-recursive pdf \ pdf-am ps ps-am tags tags-recursive uninstall uninstall-am \ uninstall-appDATA uninstall-iconDATA uninstall-info-am \ uninstall-logoDATA @INTLTOOL_DESKTOP_RULE@ install-data-local: -$(mkinstalldirs) $(DESTDIR)$(scoredir) -touch $(DESTDIR)$(scoredir)/atomix.scores -chown games.games $(DESTDIR)$(scoredir)/atomix.scores -chmod 664 $(DESTDIR)$(scoredir)/atomix.scores -chgrp games $(DESTDIR)$(bindir)/atomix && chmod 2755 $(DESTDIR)$(bindir)/atomix # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: atomix-2.14.0/config.h.in0000644000175000017500000000413110404437650012045 00000000000000/* config.h.in. Generated from configure.in by autoheader. */ #undef ENABLE_NLS #undef HAVE_CATGETS #undef HAVE_GETTEXT #undef HAVE_LC_MESSAGES #undef HAVE_STPCPY #undef HAVE_LIBSM #undef PACKAGE_LOCALE_DIR #undef PACKAGE_DATA_DIR #undef PACKAGE_SOURCE_DIR #undef GETTEXT_PACKAGE #undef EXTRA_WARNING_CFLAGS /* always defined to indicate that i18n is enabled */ #undef ENABLE_NLS /* Define to 1 if you have the `bind_textdomain_codeset' function. */ #undef HAVE_BIND_TEXTDOMAIN_CODESET /* Define to 1 if you have the `dcgettext' function. */ #undef HAVE_DCGETTEXT /* Define if the GNU gettext() function is already present or preinstalled. */ #undef HAVE_GETTEXT /* Define to 1 if you have the header file. */ #undef HAVE_INTTYPES_H /* Define if your file defines LC_MESSAGES. */ #undef HAVE_LC_MESSAGES /* Define to 1 if you have the header file. */ #undef HAVE_LOCALE_H /* Define to 1 if you have the header file. */ #undef HAVE_MEMORY_H /* Define to 1 if you have the header file. */ #undef HAVE_STDINT_H /* Define to 1 if you have the header file. */ #undef HAVE_STDLIB_H /* Define to 1 if you have the header file. */ #undef HAVE_STRINGS_H /* Define to 1 if you have the header file. */ #undef HAVE_STRING_H /* Define to 1 if you have the header file. */ #undef HAVE_SYS_STAT_H /* Define to 1 if you have the header file. */ #undef HAVE_SYS_TYPES_H /* Define to 1 if you have the header file. */ #undef HAVE_UNISTD_H /* Name of package */ #undef PACKAGE /* Define to the address where bug reports for this package should be sent. */ #undef PACKAGE_BUGREPORT /* Define to the full name of this package. */ #undef PACKAGE_NAME /* Define to the full name and version of this package. */ #undef PACKAGE_STRING /* Define to the one symbol short name of this package. */ #undef PACKAGE_TARNAME /* Define to the version of this package. */ #undef PACKAGE_VERSION /* Define to 1 if you have the ANSI C header files. */ #undef STDC_HEADERS /* Version number of package */ #undef VERSION atomix-2.14.0/configure0000755000175000017500000102410410404437647011742 00000000000000#! /bin/sh # Guess values for system-dependent variables and create Makefiles. # Generated by GNU Autoconf 2.59 for atomix 2.14.0. # # Report bugs to . # # Copyright (C) 2003 Free Software Foundation, Inc. # This configure script is free software; the Free Software Foundation # gives unlimited permission to copy, distribute and modify it. ## --------------------- ## ## M4sh Initialization. ## ## --------------------- ## # Be Bourne compatible if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then emulate sh NULLCMD=: # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then set -o posix fi DUALCASE=1; export DUALCASE # for MKS sh # Support unset when possible. if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then as_unset=unset else as_unset=false fi # Work around bugs in pre-3.0 UWIN ksh. $as_unset ENV MAIL MAILPATH PS1='$ ' PS2='> ' PS4='+ ' # NLS nuisances. for as_var in \ LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ LC_TELEPHONE LC_TIME do if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then eval $as_var=C; export $as_var else $as_unset $as_var fi done # Required to use basename. if expr a : '\(a\)' >/dev/null 2>&1; then as_expr=expr else as_expr=false fi if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then as_basename=basename else as_basename=false fi # Name of the executable. as_me=`$as_basename "$0" || $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ X"$0" : 'X\(/\)$' \| \ . : '\(.\)' 2>/dev/null || echo X/"$0" | sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } /^X\/\(\/\/\)$/{ s//\1/; q; } /^X\/\(\/\).*/{ s//\1/; q; } s/.*/./; q'` # PATH needs CR, and LINENO needs CR and PATH. # Avoid depending upon Character Ranges. as_cr_letters='abcdefghijklmnopqrstuvwxyz' as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' as_cr_Letters=$as_cr_letters$as_cr_LETTERS as_cr_digits='0123456789' as_cr_alnum=$as_cr_Letters$as_cr_digits # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then echo "#! /bin/sh" >conf$$.sh echo "exit 0" >>conf$$.sh chmod +x conf$$.sh if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then PATH_SEPARATOR=';' else PATH_SEPARATOR=: fi rm -f conf$$.sh fi as_lineno_1=$LINENO as_lineno_2=$LINENO as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` test "x$as_lineno_1" != "x$as_lineno_2" && test "x$as_lineno_3" = "x$as_lineno_2" || { # Find who we are. Look in the path if we contain no path at all # relative or not. case $0 in *[\\/]* ) as_myself=$0 ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break done ;; esac # We did not find ourselves, most probably we were run as `sh COMMAND' # in which case we are not to be found in the path. if test "x$as_myself" = x; then as_myself=$0 fi if test ! -f "$as_myself"; then { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2 { (exit 1); exit 1; }; } fi case $CONFIG_SHELL in '') as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for as_base in sh bash ksh sh5; do case $as_dir in /*) if ("$as_dir/$as_base" -c ' as_lineno_1=$LINENO as_lineno_2=$LINENO as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` test "x$as_lineno_1" != "x$as_lineno_2" && test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } CONFIG_SHELL=$as_dir/$as_base export CONFIG_SHELL exec "$CONFIG_SHELL" "$0" ${1+"$@"} fi;; esac done done ;; esac # Create $as_me.lineno as a copy of $as_myself, but with $LINENO # uniformly replaced by the line number. The first 'sed' inserts a # line-number line before each line; the second 'sed' does the real # work. The second script uses 'N' to pair each line-number line # with the numbered line, and appends trailing '-' during # substitution so that $LINENO is not a special case at line end. # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) sed '=' <$as_myself | sed ' N s,$,-, : loop s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, t loop s,-$,, s,^['$as_cr_digits']*\n,, ' >$as_me.lineno && chmod +x $as_me.lineno || { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 { (exit 1); exit 1; }; } # Don't try to exec as it changes $[0], causing all sort of problems # (the dirname of $[0] is not the place where we might find the # original and so on. Autoconf is especially sensible to this). . ./$as_me.lineno # Exit status is that of the last command. exit } case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in *c*,-n*) ECHO_N= ECHO_C=' ' ECHO_T=' ' ;; *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; *) ECHO_N= ECHO_C='\c' ECHO_T= ;; esac if expr a : '\(a\)' >/dev/null 2>&1; then as_expr=expr else as_expr=false fi rm -f conf$$ conf$$.exe conf$$.file echo >conf$$.file if ln -s conf$$.file conf$$ 2>/dev/null; then # We could just check for DJGPP; but this test a) works b) is more generic # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). if test -f conf$$.exe; then # Don't use ln at all; we don't have any links as_ln_s='cp -p' else as_ln_s='ln -s' fi elif ln conf$$.file conf$$ 2>/dev/null; then as_ln_s=ln else as_ln_s='cp -p' fi rm -f conf$$ conf$$.exe conf$$.file if mkdir -p . 2>/dev/null; then as_mkdir_p=: else test -d ./-p && rmdir ./-p as_mkdir_p=false fi as_executable_p="test -f" # Sed expression to map a string onto a valid CPP name. as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" # Sed expression to map a string onto a valid variable name. as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" # IFS # We need space, tab and new line, in precisely that order. as_nl=' ' IFS=" $as_nl" # CDPATH. $as_unset CDPATH # Name of the host. # hostname on some systems (SVR3.2, Linux) returns a bogus exit status, # so uname gets run too. ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` exec 6>&1 # # Initializations. # ac_default_prefix=/usr/local ac_config_libobj_dir=. cross_compiling=no subdirs= MFLAGS= MAKEFLAGS= SHELL=${CONFIG_SHELL-/bin/sh} # Maximum number of lines to put in a shell here document. # This variable seems obsolete. It should probably be removed, and # only ac_max_sed_lines should be used. : ${ac_max_here_lines=38} # Identity of this package. PACKAGE_NAME='atomix' PACKAGE_TARNAME='atomix' PACKAGE_VERSION='2.14.0' PACKAGE_STRING='atomix 2.14.0' PACKAGE_BUGREPORT='http://bugzilla.gnome.org/enter_bug.cgi?product=atomix' ac_unique_file="src/board.c" # Factoring default headers for most tests. ac_includes_default="\ #include #if HAVE_SYS_TYPES_H # include #endif #if HAVE_SYS_STAT_H # include #endif #if STDC_HEADERS # include # include #else # if HAVE_STDLIB_H # include # endif #endif #if HAVE_STRING_H # if !STDC_HEADERS && HAVE_MEMORY_H # include # endif # include #endif #if HAVE_STRINGS_H # include #endif #if HAVE_INTTYPES_H # include #else # if HAVE_STDINT_H # include # endif #endif #if HAVE_UNISTD_H # include #endif" ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar INTLTOOL_DESKTOP_RULE INTLTOOL_DIRECTORY_RULE INTLTOOL_KEYS_RULE INTLTOOL_PROP_RULE INTLTOOL_OAF_RULE INTLTOOL_PONG_RULE INTLTOOL_SERVER_RULE INTLTOOL_SHEET_RULE INTLTOOL_SOUNDLIST_RULE INTLTOOL_UI_RULE INTLTOOL_XAM_RULE INTLTOOL_KBD_RULE INTLTOOL_XML_RULE INTLTOOL_XML_NOMERGE_RULE INTLTOOL_CAVES_RULE INTLTOOL_SCHEMAS_RULE INTLTOOL_THEME_RULE INTLTOOL_SERVICE_RULE INTLTOOL_EXTRACT INTLTOOL_MERGE INTLTOOL_UPDATE INTLTOOL_PERL INTLTOOL_ICONV INTLTOOL_MSGFMT INTLTOOL_MSGMERGE INTLTOOL_XGETTEXT CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CPP EGREP RANLIB ac_ct_RANLIB WARN_CFLAGS PKG_CONFIG ac_pt_PKG_CONFIG ATOMIX_CFLAGS ATOMIX_LIBS GETTEXT_PACKAGE USE_NLS MSGFMT GMSGFMT XGETTEXT CATALOGS CATOBJEXT DATADIRNAME GMOFILES INSTOBJEXT INTLLIBS PO_IN_DATADIR_TRUE PO_IN_DATADIR_FALSE POFILES POSUB MKINSTALLDIRS EXTRA_WARNING_CFLAGS LIBOBJS LTLIBOBJS' ac_subst_files='' # Initialize some variables set by options. ac_init_help= ac_init_version=false # The variables have the same names as the options, with # dashes changed to underlines. cache_file=/dev/null exec_prefix=NONE no_create= no_recursion= prefix=NONE program_prefix=NONE program_suffix=NONE program_transform_name=s,x,x, silent= site= srcdir= verbose= x_includes=NONE x_libraries=NONE # Installation directory options. # These are left unexpanded so users can "make install exec_prefix=/foo" # and all the variables that are supposed to be based on exec_prefix # by default will actually change. # Use braces instead of parens because sh, perl, etc. also accept them. bindir='${exec_prefix}/bin' sbindir='${exec_prefix}/sbin' libexecdir='${exec_prefix}/libexec' datadir='${prefix}/share' sysconfdir='${prefix}/etc' sharedstatedir='${prefix}/com' localstatedir='${prefix}/var' libdir='${exec_prefix}/lib' includedir='${prefix}/include' oldincludedir='/usr/include' infodir='${prefix}/info' mandir='${prefix}/man' ac_prev= for ac_option do # If the previous option needs an argument, assign it. if test -n "$ac_prev"; then eval "$ac_prev=\$ac_option" ac_prev= continue fi ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'` # Accept the important Cygnus configure options, so we can diagnose typos. case $ac_option in -bindir | --bindir | --bindi | --bind | --bin | --bi) ac_prev=bindir ;; -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) bindir=$ac_optarg ;; -build | --build | --buil | --bui | --bu) ac_prev=build_alias ;; -build=* | --build=* | --buil=* | --bui=* | --bu=*) build_alias=$ac_optarg ;; -cache-file | --cache-file | --cache-fil | --cache-fi \ | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) ac_prev=cache_file ;; -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) cache_file=$ac_optarg ;; --config-cache | -C) cache_file=config.cache ;; -datadir | --datadir | --datadi | --datad | --data | --dat | --da) ac_prev=datadir ;; -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \ | --da=*) datadir=$ac_optarg ;; -disable-* | --disable-*) ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'` # Reject names that are not valid shell variable names. expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid feature name: $ac_feature" >&2 { (exit 1); exit 1; }; } ac_feature=`echo $ac_feature | sed 's/-/_/g'` eval "enable_$ac_feature=no" ;; -enable-* | --enable-*) ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` # Reject names that are not valid shell variable names. expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid feature name: $ac_feature" >&2 { (exit 1); exit 1; }; } ac_feature=`echo $ac_feature | sed 's/-/_/g'` case $ac_option in *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; *) ac_optarg=yes ;; esac eval "enable_$ac_feature='$ac_optarg'" ;; -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ | --exec | --exe | --ex) ac_prev=exec_prefix ;; -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ | --exec=* | --exe=* | --ex=*) exec_prefix=$ac_optarg ;; -gas | --gas | --ga | --g) # Obsolete; use --with-gas. with_gas=yes ;; -help | --help | --hel | --he | -h) ac_init_help=long ;; -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) ac_init_help=recursive ;; -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) ac_init_help=short ;; -host | --host | --hos | --ho) ac_prev=host_alias ;; -host=* | --host=* | --hos=* | --ho=*) host_alias=$ac_optarg ;; -includedir | --includedir | --includedi | --included | --include \ | --includ | --inclu | --incl | --inc) ac_prev=includedir ;; -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ | --includ=* | --inclu=* | --incl=* | --inc=*) includedir=$ac_optarg ;; -infodir | --infodir | --infodi | --infod | --info | --inf) ac_prev=infodir ;; -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) infodir=$ac_optarg ;; -libdir | --libdir | --libdi | --libd) ac_prev=libdir ;; -libdir=* | --libdir=* | --libdi=* | --libd=*) libdir=$ac_optarg ;; -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ | --libexe | --libex | --libe) ac_prev=libexecdir ;; -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ | --libexe=* | --libex=* | --libe=*) libexecdir=$ac_optarg ;; -localstatedir | --localstatedir | --localstatedi | --localstated \ | --localstate | --localstat | --localsta | --localst \ | --locals | --local | --loca | --loc | --lo) ac_prev=localstatedir ;; -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ | --localstate=* | --localstat=* | --localsta=* | --localst=* \ | --locals=* | --local=* | --loca=* | --loc=* | --lo=*) localstatedir=$ac_optarg ;; -mandir | --mandir | --mandi | --mand | --man | --ma | --m) ac_prev=mandir ;; -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) mandir=$ac_optarg ;; -nfp | --nfp | --nf) # Obsolete; use --without-fp. with_fp=no ;; -no-create | --no-create | --no-creat | --no-crea | --no-cre \ | --no-cr | --no-c | -n) no_create=yes ;; -no-recursion | --no-recursion | --no-recursio | --no-recursi \ | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) no_recursion=yes ;; -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ | --oldin | --oldi | --old | --ol | --o) ac_prev=oldincludedir ;; -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) oldincludedir=$ac_optarg ;; -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) ac_prev=prefix ;; -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) prefix=$ac_optarg ;; -program-prefix | --program-prefix | --program-prefi | --program-pref \ | --program-pre | --program-pr | --program-p) ac_prev=program_prefix ;; -program-prefix=* | --program-prefix=* | --program-prefi=* \ | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) program_prefix=$ac_optarg ;; -program-suffix | --program-suffix | --program-suffi | --program-suff \ | --program-suf | --program-su | --program-s) ac_prev=program_suffix ;; -program-suffix=* | --program-suffix=* | --program-suffi=* \ | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) program_suffix=$ac_optarg ;; -program-transform-name | --program-transform-name \ | --program-transform-nam | --program-transform-na \ | --program-transform-n | --program-transform- \ | --program-transform | --program-transfor \ | --program-transfo | --program-transf \ | --program-trans | --program-tran \ | --progr-tra | --program-tr | --program-t) ac_prev=program_transform_name ;; -program-transform-name=* | --program-transform-name=* \ | --program-transform-nam=* | --program-transform-na=* \ | --program-transform-n=* | --program-transform-=* \ | --program-transform=* | --program-transfor=* \ | --program-transfo=* | --program-transf=* \ | --program-trans=* | --program-tran=* \ | --progr-tra=* | --program-tr=* | --program-t=*) program_transform_name=$ac_optarg ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil) silent=yes ;; -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) ac_prev=sbindir ;; -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ | --sbi=* | --sb=*) sbindir=$ac_optarg ;; -sharedstatedir | --sharedstatedir | --sharedstatedi \ | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ | --sharedst | --shareds | --shared | --share | --shar \ | --sha | --sh) ac_prev=sharedstatedir ;; -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ | --sha=* | --sh=*) sharedstatedir=$ac_optarg ;; -site | --site | --sit) ac_prev=site ;; -site=* | --site=* | --sit=*) site=$ac_optarg ;; -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) ac_prev=srcdir ;; -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) srcdir=$ac_optarg ;; -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ | --syscon | --sysco | --sysc | --sys | --sy) ac_prev=sysconfdir ;; -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) sysconfdir=$ac_optarg ;; -target | --target | --targe | --targ | --tar | --ta | --t) ac_prev=target_alias ;; -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) target_alias=$ac_optarg ;; -v | -verbose | --verbose | --verbos | --verbo | --verb) verbose=yes ;; -version | --version | --versio | --versi | --vers | -V) ac_init_version=: ;; -with-* | --with-*) ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` # Reject names that are not valid shell variable names. expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid package name: $ac_package" >&2 { (exit 1); exit 1; }; } ac_package=`echo $ac_package| sed 's/-/_/g'` case $ac_option in *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; *) ac_optarg=yes ;; esac eval "with_$ac_package='$ac_optarg'" ;; -without-* | --without-*) ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'` # Reject names that are not valid shell variable names. expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid package name: $ac_package" >&2 { (exit 1); exit 1; }; } ac_package=`echo $ac_package | sed 's/-/_/g'` eval "with_$ac_package=no" ;; --x) # Obsolete; use --with-x. with_x=yes ;; -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ | --x-incl | --x-inc | --x-in | --x-i) ac_prev=x_includes ;; -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) x_includes=$ac_optarg ;; -x-libraries | --x-libraries | --x-librarie | --x-librari \ | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) ac_prev=x_libraries ;; -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) x_libraries=$ac_optarg ;; -*) { echo "$as_me: error: unrecognized option: $ac_option Try \`$0 --help' for more information." >&2 { (exit 1); exit 1; }; } ;; *=*) ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` # Reject names that are not valid shell variable names. expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid variable name: $ac_envvar" >&2 { (exit 1); exit 1; }; } ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` eval "$ac_envvar='$ac_optarg'" export $ac_envvar ;; *) # FIXME: should be removed in autoconf 3.0. echo "$as_me: WARNING: you should use --build, --host, --target" >&2 expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && echo "$as_me: WARNING: invalid host type: $ac_option" >&2 : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option} ;; esac done if test -n "$ac_prev"; then ac_option=--`echo $ac_prev | sed 's/_/-/g'` { echo "$as_me: error: missing argument to $ac_option" >&2 { (exit 1); exit 1; }; } fi # Be sure to have absolute paths. for ac_var in exec_prefix prefix do eval ac_val=$`echo $ac_var` case $ac_val in [\\/$]* | ?:[\\/]* | NONE | '' ) ;; *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 { (exit 1); exit 1; }; };; esac done # Be sure to have absolute paths. for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \ localstatedir libdir includedir oldincludedir infodir mandir do eval ac_val=$`echo $ac_var` case $ac_val in [\\/$]* | ?:[\\/]* ) ;; *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 { (exit 1); exit 1; }; };; esac done # There might be people who depend on the old broken behavior: `$host' # used to hold the argument of --host etc. # FIXME: To remove some day. build=$build_alias host=$host_alias target=$target_alias # FIXME: To remove some day. if test "x$host_alias" != x; then if test "x$build_alias" = x; then cross_compiling=maybe echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host. If a cross compiler is detected then cross compile mode will be used." >&2 elif test "x$build_alias" != "x$host_alias"; then cross_compiling=yes fi fi ac_tool_prefix= test -n "$host_alias" && ac_tool_prefix=$host_alias- test "$silent" = yes && exec 6>/dev/null # Find the source files, if location was not specified. if test -z "$srcdir"; then ac_srcdir_defaulted=yes # Try the directory containing this script, then its parent. ac_confdir=`(dirname "$0") 2>/dev/null || $as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$0" : 'X\(//\)[^/]' \| \ X"$0" : 'X\(//\)$' \| \ X"$0" : 'X\(/\)' \| \ . : '\(.\)' 2>/dev/null || echo X"$0" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } /^X\(\/\/\)[^/].*/{ s//\1/; q; } /^X\(\/\/\)$/{ s//\1/; q; } /^X\(\/\).*/{ s//\1/; q; } s/.*/./; q'` srcdir=$ac_confdir if test ! -r $srcdir/$ac_unique_file; then srcdir=.. fi else ac_srcdir_defaulted=no fi if test ! -r $srcdir/$ac_unique_file; then if test "$ac_srcdir_defaulted" = yes; then { echo "$as_me: error: cannot find sources ($ac_unique_file) in $ac_confdir or .." >&2 { (exit 1); exit 1; }; } else { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2 { (exit 1); exit 1; }; } fi fi (cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null || { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not work" >&2 { (exit 1); exit 1; }; } srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'` ac_env_build_alias_set=${build_alias+set} ac_env_build_alias_value=$build_alias ac_cv_env_build_alias_set=${build_alias+set} ac_cv_env_build_alias_value=$build_alias ac_env_host_alias_set=${host_alias+set} ac_env_host_alias_value=$host_alias ac_cv_env_host_alias_set=${host_alias+set} ac_cv_env_host_alias_value=$host_alias ac_env_target_alias_set=${target_alias+set} ac_env_target_alias_value=$target_alias ac_cv_env_target_alias_set=${target_alias+set} ac_cv_env_target_alias_value=$target_alias ac_env_CC_set=${CC+set} ac_env_CC_value=$CC ac_cv_env_CC_set=${CC+set} ac_cv_env_CC_value=$CC ac_env_CFLAGS_set=${CFLAGS+set} ac_env_CFLAGS_value=$CFLAGS ac_cv_env_CFLAGS_set=${CFLAGS+set} ac_cv_env_CFLAGS_value=$CFLAGS ac_env_LDFLAGS_set=${LDFLAGS+set} ac_env_LDFLAGS_value=$LDFLAGS ac_cv_env_LDFLAGS_set=${LDFLAGS+set} ac_cv_env_LDFLAGS_value=$LDFLAGS ac_env_CPPFLAGS_set=${CPPFLAGS+set} ac_env_CPPFLAGS_value=$CPPFLAGS ac_cv_env_CPPFLAGS_set=${CPPFLAGS+set} ac_cv_env_CPPFLAGS_value=$CPPFLAGS ac_env_CPP_set=${CPP+set} ac_env_CPP_value=$CPP ac_cv_env_CPP_set=${CPP+set} ac_cv_env_CPP_value=$CPP ac_env_PKG_CONFIG_set=${PKG_CONFIG+set} ac_env_PKG_CONFIG_value=$PKG_CONFIG ac_cv_env_PKG_CONFIG_set=${PKG_CONFIG+set} ac_cv_env_PKG_CONFIG_value=$PKG_CONFIG ac_env_ATOMIX_CFLAGS_set=${ATOMIX_CFLAGS+set} ac_env_ATOMIX_CFLAGS_value=$ATOMIX_CFLAGS ac_cv_env_ATOMIX_CFLAGS_set=${ATOMIX_CFLAGS+set} ac_cv_env_ATOMIX_CFLAGS_value=$ATOMIX_CFLAGS ac_env_ATOMIX_LIBS_set=${ATOMIX_LIBS+set} ac_env_ATOMIX_LIBS_value=$ATOMIX_LIBS ac_cv_env_ATOMIX_LIBS_set=${ATOMIX_LIBS+set} ac_cv_env_ATOMIX_LIBS_value=$ATOMIX_LIBS # # Report the --help message. # if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF \`configure' configures atomix 2.14.0 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... To assign environment variables (e.g., CC, CFLAGS...), specify them as VAR=VALUE. See below for descriptions of some of the useful variables. Defaults for the options are specified in brackets. Configuration: -h, --help display this help and exit --help=short display options specific to this package --help=recursive display the short help of all the included packages -V, --version display version information and exit -q, --quiet, --silent do not print \`checking...' messages --cache-file=FILE cache test results in FILE [disabled] -C, --config-cache alias for \`--cache-file=config.cache' -n, --no-create do not create output files --srcdir=DIR find the sources in DIR [configure dir or \`..'] _ACEOF cat <<_ACEOF Installation directories: --prefix=PREFIX install architecture-independent files in PREFIX [$ac_default_prefix] --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX [PREFIX] By default, \`make install' will install all the files in \`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify an installation prefix other than \`$ac_default_prefix' using \`--prefix', for instance \`--prefix=\$HOME'. For better control, use the options below. Fine tuning of the installation directories: --bindir=DIR user executables [EPREFIX/bin] --sbindir=DIR system admin executables [EPREFIX/sbin] --libexecdir=DIR program executables [EPREFIX/libexec] --datadir=DIR read-only architecture-independent data [PREFIX/share] --sysconfdir=DIR read-only single-machine data [PREFIX/etc] --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] --localstatedir=DIR modifiable single-machine data [PREFIX/var] --libdir=DIR object code libraries [EPREFIX/lib] --includedir=DIR C header files [PREFIX/include] --oldincludedir=DIR C header files for non-gcc [/usr/include] --infodir=DIR info documentation [PREFIX/info] --mandir=DIR man documentation [PREFIX/man] _ACEOF cat <<\_ACEOF Program names: --program-prefix=PREFIX prepend PREFIX to installed program names --program-suffix=SUFFIX append SUFFIX to installed program names --program-transform-name=PROGRAM run sed PROGRAM on installed program names _ACEOF fi if test -n "$ac_init_help"; then case $ac_init_help in short | recursive ) echo "Configuration of atomix 2.14.0:";; esac cat <<\_ACEOF Optional Features: --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) --enable-FEATURE[=ARG] include FEATURE [ARG=yes] --disable-dependency-tracking speeds up one-time build --enable-dependency-tracking do not reject slow dependency extractors --enable-compile-warnings=[no/minimum/yes/maximum/error] Turn on compiler warnings --enable-iso-c Try to warn if code is not ISO C Some influential environment variables: CC C compiler command CFLAGS C compiler flags LDFLAGS linker flags, e.g. -L if you have libraries in a nonstandard directory CPPFLAGS C/C++ preprocessor flags, e.g. -I if you have headers in a nonstandard directory CPP C preprocessor PKG_CONFIG path to pkg-config utility ATOMIX_CFLAGS C compiler flags for ATOMIX, overriding pkg-config ATOMIX_LIBS linker flags for ATOMIX, overriding pkg-config Use these variables to override the choices made by `configure' or to help it to find libraries and programs with nonstandard names/locations. Report bugs to . _ACEOF fi if test "$ac_init_help" = "recursive"; then # If there are subdirs, report their specific --help. ac_popdir=`pwd` for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue test -d $ac_dir || continue ac_builddir=. if test "$ac_dir" != .; then ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` # A "../" for each directory in $ac_dir_suffix. ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` else ac_dir_suffix= ac_top_builddir= fi case $srcdir in .) # No --srcdir option. We are building in place. ac_srcdir=. if test -z "$ac_top_builddir"; then ac_top_srcdir=. else ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` fi ;; [\\/]* | ?:[\\/]* ) # Absolute path. ac_srcdir=$srcdir$ac_dir_suffix; ac_top_srcdir=$srcdir ;; *) # Relative path. ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix ac_top_srcdir=$ac_top_builddir$srcdir ;; esac # Do not use `cd foo && pwd` to compute absolute paths, because # the directories may not exist. case `pwd` in .) ac_abs_builddir="$ac_dir";; *) case "$ac_dir" in .) ac_abs_builddir=`pwd`;; [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; *) ac_abs_builddir=`pwd`/"$ac_dir";; esac;; esac case $ac_abs_builddir in .) ac_abs_top_builddir=${ac_top_builddir}.;; *) case ${ac_top_builddir}. in .) ac_abs_top_builddir=$ac_abs_builddir;; [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; esac;; esac case $ac_abs_builddir in .) ac_abs_srcdir=$ac_srcdir;; *) case $ac_srcdir in .) ac_abs_srcdir=$ac_abs_builddir;; [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; esac;; esac case $ac_abs_builddir in .) ac_abs_top_srcdir=$ac_top_srcdir;; *) case $ac_top_srcdir in .) ac_abs_top_srcdir=$ac_abs_builddir;; [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; esac;; esac cd $ac_dir # Check for guested configure; otherwise get Cygnus style configure. if test -f $ac_srcdir/configure.gnu; then echo $SHELL $ac_srcdir/configure.gnu --help=recursive elif test -f $ac_srcdir/configure; then echo $SHELL $ac_srcdir/configure --help=recursive elif test -f $ac_srcdir/configure.ac || test -f $ac_srcdir/configure.in; then echo $ac_configure --help else echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 fi cd "$ac_popdir" done fi test -n "$ac_init_help" && exit 0 if $ac_init_version; then cat <<\_ACEOF atomix configure 2.14.0 generated by GNU Autoconf 2.59 Copyright (C) 2003 Free Software Foundation, Inc. This configure script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. _ACEOF exit 0 fi exec 5>config.log cat >&5 <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. It was created by atomix $as_me 2.14.0, which was generated by GNU Autoconf 2.59. Invocation command line was $ $0 $@ _ACEOF { cat <<_ASUNAME ## --------- ## ## Platform. ## ## --------- ## hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` uname -m = `(uname -m) 2>/dev/null || echo unknown` uname -r = `(uname -r) 2>/dev/null || echo unknown` uname -s = `(uname -s) 2>/dev/null || echo unknown` uname -v = `(uname -v) 2>/dev/null || echo unknown` /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` /bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` /bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` hostinfo = `(hostinfo) 2>/dev/null || echo unknown` /bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` /bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` _ASUNAME as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. echo "PATH: $as_dir" done } >&5 cat >&5 <<_ACEOF ## ----------- ## ## Core tests. ## ## ----------- ## _ACEOF # Keep a trace of the command line. # Strip out --no-create and --no-recursion so they do not pile up. # Strip out --silent because we don't want to record it for future runs. # Also quote any args containing shell meta-characters. # Make two passes to allow for proper duplicate-argument suppression. ac_configure_args= ac_configure_args0= ac_configure_args1= ac_sep= ac_must_keep_next=false for ac_pass in 1 2 do for ac_arg do case $ac_arg in -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil) continue ;; *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; esac case $ac_pass in 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;; 2) ac_configure_args1="$ac_configure_args1 '$ac_arg'" if test $ac_must_keep_next = true; then ac_must_keep_next=false # Got value, back to normal. else case $ac_arg in *=* | --config-cache | -C | -disable-* | --disable-* \ | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ | -with-* | --with-* | -without-* | --without-* | --x) case "$ac_configure_args0 " in "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; esac ;; -* ) ac_must_keep_next=true ;; esac fi ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'" # Get rid of the leading space. ac_sep=" " ;; esac done done $as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; } $as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; } # When interrupted or exit'd, cleanup temporary files, and complete # config.log. We remove comments because anyway the quotes in there # would cause problems or look ugly. # WARNING: Be sure not to use single quotes in there, as some shells, # such as our DU 5.0 friend, will then `close' the trap. trap 'exit_status=$? # Save into config.log some information that might help in debugging. { echo cat <<\_ASBOX ## ---------------- ## ## Cache variables. ## ## ---------------- ## _ASBOX echo # The following way of writing the cache mishandles newlines in values, { (set) 2>&1 | case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in *ac_space=\ *) sed -n \ "s/'"'"'/'"'"'\\\\'"'"''"'"'/g; s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p" ;; *) sed -n \ "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" ;; esac; } echo cat <<\_ASBOX ## ----------------- ## ## Output variables. ## ## ----------------- ## _ASBOX echo for ac_var in $ac_subst_vars do eval ac_val=$`echo $ac_var` echo "$ac_var='"'"'$ac_val'"'"'" done | sort echo if test -n "$ac_subst_files"; then cat <<\_ASBOX ## ------------- ## ## Output files. ## ## ------------- ## _ASBOX echo for ac_var in $ac_subst_files do eval ac_val=$`echo $ac_var` echo "$ac_var='"'"'$ac_val'"'"'" done | sort echo fi if test -s confdefs.h; then cat <<\_ASBOX ## ----------- ## ## confdefs.h. ## ## ----------- ## _ASBOX echo sed "/^$/d" confdefs.h | sort echo fi test "$ac_signal" != 0 && echo "$as_me: caught signal $ac_signal" echo "$as_me: exit $exit_status" } >&5 rm -f core *.core && rm -rf conftest* confdefs* conf$$* $ac_clean_files && exit $exit_status ' 0 for ac_signal in 1 2 13 15; do trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal done ac_signal=0 # confdefs.h avoids OS command line length limits that DEFS can exceed. rm -rf conftest* confdefs.h # AIX cpp loses on an empty file, so make sure it contains at least a newline. echo >confdefs.h # Predefined preprocessor variables. cat >>confdefs.h <<_ACEOF #define PACKAGE_NAME "$PACKAGE_NAME" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_TARNAME "$PACKAGE_TARNAME" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_VERSION "$PACKAGE_VERSION" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_STRING "$PACKAGE_STRING" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" _ACEOF # Let the site file select an alternate cache file if it wants to. # Prefer explicitly selected file to automatically selected ones. if test -z "$CONFIG_SITE"; then if test "x$prefix" != xNONE; then CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" else CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" fi fi for ac_site_file in $CONFIG_SITE; do if test -r "$ac_site_file"; then { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5 echo "$as_me: loading site script $ac_site_file" >&6;} sed 's/^/| /' "$ac_site_file" >&5 . "$ac_site_file" fi done if test -r "$cache_file"; then # Some versions of bash will fail to source /dev/null (special # files actually), so we avoid doing that. if test -f "$cache_file"; then { echo "$as_me:$LINENO: loading cache $cache_file" >&5 echo "$as_me: loading cache $cache_file" >&6;} case $cache_file in [\\/]* | ?:[\\/]* ) . $cache_file;; *) . ./$cache_file;; esac fi else { echo "$as_me:$LINENO: creating cache $cache_file" >&5 echo "$as_me: creating cache $cache_file" >&6;} >$cache_file fi # Check that the precious variables saved in the cache have kept the same # value. ac_cache_corrupted=false for ac_var in `(set) 2>&1 | sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do eval ac_old_set=\$ac_cv_env_${ac_var}_set eval ac_new_set=\$ac_env_${ac_var}_set eval ac_old_val="\$ac_cv_env_${ac_var}_value" eval ac_new_val="\$ac_env_${ac_var}_value" case $ac_old_set,$ac_new_set in set,) { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} ac_cache_corrupted=: ;; ,set) { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5 echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} ac_cache_corrupted=: ;; ,);; *) if test "x$ac_old_val" != "x$ac_new_val"; then { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5 echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} { echo "$as_me:$LINENO: former value: $ac_old_val" >&5 echo "$as_me: former value: $ac_old_val" >&2;} { echo "$as_me:$LINENO: current value: $ac_new_val" >&5 echo "$as_me: current value: $ac_new_val" >&2;} ac_cache_corrupted=: fi;; esac # Pass precious variables to config.status. if test "$ac_new_set" = set; then case $ac_new_val in *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; *) ac_arg=$ac_var=$ac_new_val ;; esac case " $ac_configure_args " in *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. *) ac_configure_args="$ac_configure_args '$ac_arg'" ;; esac fi done if $ac_cache_corrupted; then { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5 echo "$as_me: error: changes in the environment can compromise the build" >&2;} { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5 echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;} { (exit 1); exit 1; }; } fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu am__api_version="1.9" ac_aux_dir= for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do if test -f $ac_dir/install-sh; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/install-sh -c" break elif test -f $ac_dir/install.sh; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/install.sh -c" break elif test -f $ac_dir/shtool; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/shtool install -c" break fi done if test -z "$ac_aux_dir"; then { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5 echo "$as_me: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&2;} { (exit 1); exit 1; }; } fi ac_config_guess="$SHELL $ac_aux_dir/config.guess" ac_config_sub="$SHELL $ac_aux_dir/config.sub" ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure. # Find a good install program. We prefer a C program (faster), # so one script is as good as another. But avoid the broken or # incompatible versions: # SysV /etc/install, /usr/sbin/install # SunOS /usr/etc/install # IRIX /sbin/install # AIX /bin/install # AmigaOS /C/install, which installs bootblocks on floppy discs # AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag # AFS /usr/afsws/bin/install, which mishandles nonexistent args # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" # OS/2's system install, which has a completely different semantic # ./install, which can be erroneously created by make from ./install.sh. echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5 echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6 if test -z "$INSTALL"; then if test "${ac_cv_path_install+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. # Account for people who put trailing slashes in PATH elements. case $as_dir/ in ./ | .// | /cC/* | \ /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \ /usr/ucb/* ) ;; *) # OSF1 and SCO ODT 3.0 have their own names for install. # Don't use installbsd from OSF since it installs stuff as root # by default. for ac_prog in ginstall scoinst install; do for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then if test $ac_prog = install && grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then # AIX install. It has an incompatible calling convention. : elif test $ac_prog = install && grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then # program-specific install script used by HP pwplus--don't use. : else ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" break 3 fi fi done done ;; esac done fi if test "${ac_cv_path_install+set}" = set; then INSTALL=$ac_cv_path_install else # As a last resort, use the slow shell script. We don't cache a # path for INSTALL within a source directory, because that will # break other packages using the cache if that directory is # removed, or if the path is relative. INSTALL=$ac_install_sh fi fi echo "$as_me:$LINENO: result: $INSTALL" >&5 echo "${ECHO_T}$INSTALL" >&6 # Use test -z because SunOS4 sh mishandles braces in ${var-val}. # It thinks the first close brace ends the variable substitution. test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' echo "$as_me:$LINENO: checking whether build environment is sane" >&5 echo $ECHO_N "checking whether build environment is sane... $ECHO_C" >&6 # Just in case sleep 1 echo timestamp > conftest.file # Do `set' in a subshell so we don't clobber the current shell's # arguments. Must try -L first in case configure is actually a # symlink; some systems play weird games with the mod time of symlinks # (eg FreeBSD returns the mod time of the symlink's containing # directory). if ( set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null` if test "$*" = "X"; then # -L didn't work. set X `ls -t $srcdir/configure conftest.file` fi rm -f conftest.file if test "$*" != "X $srcdir/configure conftest.file" \ && test "$*" != "X conftest.file $srcdir/configure"; then # If neither matched, then we have a broken ls. This can happen # if, for instance, CONFIG_SHELL is bash and it inherits a # broken ls alias from the environment. This has actually # happened. Such a system could not be considered "sane". { { echo "$as_me:$LINENO: error: ls -t appears to fail. Make sure there is not a broken alias in your environment" >&5 echo "$as_me: error: ls -t appears to fail. Make sure there is not a broken alias in your environment" >&2;} { (exit 1); exit 1; }; } fi test "$2" = conftest.file ) then # Ok. : else { { echo "$as_me:$LINENO: error: newly created file is older than distributed files! Check your system clock" >&5 echo "$as_me: error: newly created file is older than distributed files! Check your system clock" >&2;} { (exit 1); exit 1; }; } fi echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6 test "$program_prefix" != NONE && program_transform_name="s,^,$program_prefix,;$program_transform_name" # Use a double $ so make ignores it. test "$program_suffix" != NONE && program_transform_name="s,\$,$program_suffix,;$program_transform_name" # Double any \ or $. echo might interpret backslashes. # By default was `s,x,x', remove it if useless. cat <<\_ACEOF >conftest.sed s/[\\$]/&&/g;s/;s,x,x,$// _ACEOF program_transform_name=`echo $program_transform_name | sed -f conftest.sed` rm conftest.sed # expand $ac_aux_dir to an absolute path am_aux_dir=`cd $ac_aux_dir && pwd` test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing" # Use eval to expand $SHELL if eval "$MISSING --run true"; then am_missing_run="$MISSING --run " else am_missing_run= { echo "$as_me:$LINENO: WARNING: \`missing' script is too old or missing" >&5 echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;} fi if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then # We used to keeping the `.' as first argument, in order to # allow $(mkdir_p) to be used without argument. As in # $(mkdir_p) $(somedir) # where $(somedir) is conditionally defined. However this is wrong # for two reasons: # 1. if the package is installed by a user who cannot write `.' # make install will fail, # 2. the above comment should most certainly read # $(mkdir_p) $(DESTDIR)$(somedir) # so it does not work when $(somedir) is undefined and # $(DESTDIR) is not. # To support the latter case, we have to write # test -z "$(somedir)" || $(mkdir_p) $(DESTDIR)$(somedir), # so the `.' trick is pointless. mkdir_p='mkdir -p --' else # On NextStep and OpenStep, the `mkdir' command does not # recognize any option. It will interpret all options as # directories to create, and then abort because `.' already # exists. for d in ./-p ./--version; do test -d $d && rmdir $d done # $(mkinstalldirs) is defined by Automake if mkinstalldirs exists. if test -f "$ac_aux_dir/mkinstalldirs"; then mkdir_p='$(mkinstalldirs)' else mkdir_p='$(install_sh) -d' fi fi for ac_prog in gawk mawk nawk awk do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_AWK+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$AWK"; then ac_cv_prog_AWK="$AWK" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_AWK="$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi AWK=$ac_cv_prog_AWK if test -n "$AWK"; then echo "$as_me:$LINENO: result: $AWK" >&5 echo "${ECHO_T}$AWK" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi test -n "$AWK" && break done echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5 echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6 set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,:./+-,___p_,'` if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.make <<\_ACEOF all: @echo 'ac_maketemp="$(MAKE)"' _ACEOF # GNU make sometimes prints "make[1]: Entering...", which would confuse us. eval `${MAKE-make} -f conftest.make 2>/dev/null | grep temp=` if test -n "$ac_maketemp"; then eval ac_cv_prog_make_${ac_make}_set=yes else eval ac_cv_prog_make_${ac_make}_set=no fi rm -f conftest.make fi if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6 SET_MAKE= else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 SET_MAKE="MAKE=${MAKE-make}" fi rm -rf .tst 2>/dev/null mkdir .tst 2>/dev/null if test -d .tst; then am__leading_dot=. else am__leading_dot=_ fi rmdir .tst 2>/dev/null # test to see if srcdir already configured if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then { { echo "$as_me:$LINENO: error: source directory already configured; run \"make distclean\" there first" >&5 echo "$as_me: error: source directory already configured; run \"make distclean\" there first" >&2;} { (exit 1); exit 1; }; } fi # test whether we have cygpath if test -z "$CYGPATH_W"; then if (cygpath --version) >/dev/null 2>/dev/null; then CYGPATH_W='cygpath -w' else CYGPATH_W=echo fi fi # Define the identity of the package. PACKAGE=atomix VERSION=2.14.0 cat >>confdefs.h <<_ACEOF #define PACKAGE "$PACKAGE" _ACEOF cat >>confdefs.h <<_ACEOF #define VERSION "$VERSION" _ACEOF # Some tools Automake needs. ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"} AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"} AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"} AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"} MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"} install_sh=${install_sh-"$am_aux_dir/install-sh"} # Installed binaries are usually stripped using `strip' when the user # run `make install-strip'. However `strip' might not be the right # tool to use in cross-compilation environments, therefore Automake # will honor the `STRIP' environment variable to overrule this program. if test "$cross_compiling" != no; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. set dummy ${ac_tool_prefix}strip; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_STRIP+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$STRIP"; then ac_cv_prog_STRIP="$STRIP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_STRIP="${ac_tool_prefix}strip" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi STRIP=$ac_cv_prog_STRIP if test -n "$STRIP"; then echo "$as_me:$LINENO: result: $STRIP" >&5 echo "${ECHO_T}$STRIP" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi fi if test -z "$ac_cv_prog_STRIP"; then ac_ct_STRIP=$STRIP # Extract the first word of "strip", so it can be a program name with args. set dummy strip; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$ac_ct_STRIP"; then ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_STRIP="strip" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done test -z "$ac_cv_prog_ac_ct_STRIP" && ac_cv_prog_ac_ct_STRIP=":" fi fi ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP if test -n "$ac_ct_STRIP"; then echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5 echo "${ECHO_T}$ac_ct_STRIP" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi STRIP=$ac_ct_STRIP else STRIP="$ac_cv_prog_STRIP" fi fi INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s" # We need awk for the "check" target. The system "awk" is bad on # some platforms. # Always define AMTAR for backward compatibility. AMTAR=${AMTAR-"${am_missing_run}tar"} am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -' ac_config_headers="$ac_config_headers config.h" case "$am__api_version" in 1.01234) { { echo "$as_me:$LINENO: error: Automake 1.5 or newer is required to use intltool" >&5 echo "$as_me: error: Automake 1.5 or newer is required to use intltool" >&2;} { (exit 1); exit 1; }; } ;; *) ;; esac if test -n ""; then echo "$as_me:$LINENO: checking for intltool >= " >&5 echo $ECHO_N "checking for intltool >= ... $ECHO_C" >&6 INTLTOOL_REQUIRED_VERSION_AS_INT=`echo | awk -F. '{ print $ 1 * 100 + $ 2; }'` INTLTOOL_APPLIED_VERSION=`awk -F\" '/\\$VERSION / { print $ 2; }' ${ac_aux_dir}/intltool-update.in` INTLTOOL_APPLIED_VERSION_AS_INT=`awk -F\" '/\\$VERSION / { split($ 2, VERSION, "."); print VERSION[1] * 100 + VERSION[2];}' ${ac_aux_dir}/intltool-update.in` echo "$as_me:$LINENO: result: $INTLTOOL_APPLIED_VERSION found" >&5 echo "${ECHO_T}$INTLTOOL_APPLIED_VERSION found" >&6 test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge "$INTLTOOL_REQUIRED_VERSION_AS_INT" || { { echo "$as_me:$LINENO: error: Your intltool is too old. You need intltool or later." >&5 echo "$as_me: error: Your intltool is too old. You need intltool or later." >&2;} { (exit 1); exit 1; }; } fi INTLTOOL_DESKTOP_RULE='%.desktop: %.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_DIRECTORY_RULE='%.directory: %.directory.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_KEYS_RULE='%.keys: %.keys.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -k -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_PROP_RULE='%.prop: %.prop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_OAF_RULE='%.oaf: %.oaf.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -o -p $(top_srcdir)/po $< $@' INTLTOOL_PONG_RULE='%.pong: %.pong.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_SERVER_RULE='%.server: %.server.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -o -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_SHEET_RULE='%.sheet: %.sheet.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_SOUNDLIST_RULE='%.soundlist: %.soundlist.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_UI_RULE='%.ui: %.ui.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_XML_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_XML_NOMERGE_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u /tmp $< $@' INTLTOOL_XAM_RULE='%.xam: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_KBD_RULE='%.kbd: %.kbd.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -m -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_CAVES_RULE='%.caves: %.caves.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_SCHEMAS_RULE='%.schemas: %.schemas.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -s -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_THEME_RULE='%.theme: %.theme.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' INTLTOOL_SERVICE_RULE='%.service: %.service.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@' # Use the tools built into the package, not the ones that are installed. INTLTOOL_EXTRACT='$(top_builddir)/intltool-extract' INTLTOOL_MERGE='$(top_builddir)/intltool-merge' INTLTOOL_UPDATE='$(top_builddir)/intltool-update' # Extract the first word of "perl", so it can be a program name with args. set dummy perl; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_path_INTLTOOL_PERL+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else case $INTLTOOL_PERL in [\\/]* | ?:[\\/]*) ac_cv_path_INTLTOOL_PERL="$INTLTOOL_PERL" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_INTLTOOL_PERL="$as_dir/$ac_word$ac_exec_ext" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done ;; esac fi INTLTOOL_PERL=$ac_cv_path_INTLTOOL_PERL if test -n "$INTLTOOL_PERL"; then echo "$as_me:$LINENO: result: $INTLTOOL_PERL" >&5 echo "${ECHO_T}$INTLTOOL_PERL" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi if test -z "$INTLTOOL_PERL"; then { { echo "$as_me:$LINENO: error: perl not found; required for intltool" >&5 echo "$as_me: error: perl not found; required for intltool" >&2;} { (exit 1); exit 1; }; } fi if test -z "`$INTLTOOL_PERL -v | fgrep '5.' 2> /dev/null`"; then { { echo "$as_me:$LINENO: error: perl 5.x required for intltool" >&5 echo "$as_me: error: perl 5.x required for intltool" >&2;} { (exit 1); exit 1; }; } fi if test "x" != "xno-xml"; then echo "$as_me:$LINENO: checking for XML::Parser" >&5 echo $ECHO_N "checking for XML::Parser... $ECHO_C" >&6 if `$INTLTOOL_PERL -e "require XML::Parser" 2>/dev/null`; then echo "$as_me:$LINENO: result: ok" >&5 echo "${ECHO_T}ok" >&6 else { { echo "$as_me:$LINENO: error: XML::Parser perl module is required for intltool" >&5 echo "$as_me: error: XML::Parser perl module is required for intltool" >&2;} { (exit 1); exit 1; }; } fi fi # Extract the first word of "iconv", so it can be a program name with args. set dummy iconv; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_path_INTLTOOL_ICONV+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else case $INTLTOOL_ICONV in [\\/]* | ?:[\\/]*) ac_cv_path_INTLTOOL_ICONV="$INTLTOOL_ICONV" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_INTLTOOL_ICONV="$as_dir/$ac_word$ac_exec_ext" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done test -z "$ac_cv_path_INTLTOOL_ICONV" && ac_cv_path_INTLTOOL_ICONV="iconv" ;; esac fi INTLTOOL_ICONV=$ac_cv_path_INTLTOOL_ICONV if test -n "$INTLTOOL_ICONV"; then echo "$as_me:$LINENO: result: $INTLTOOL_ICONV" >&5 echo "${ECHO_T}$INTLTOOL_ICONV" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi # Extract the first word of "msgfmt", so it can be a program name with args. set dummy msgfmt; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_path_INTLTOOL_MSGFMT+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else case $INTLTOOL_MSGFMT in [\\/]* | ?:[\\/]*) ac_cv_path_INTLTOOL_MSGFMT="$INTLTOOL_MSGFMT" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_INTLTOOL_MSGFMT="$as_dir/$ac_word$ac_exec_ext" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done test -z "$ac_cv_path_INTLTOOL_MSGFMT" && ac_cv_path_INTLTOOL_MSGFMT="msgfmt" ;; esac fi INTLTOOL_MSGFMT=$ac_cv_path_INTLTOOL_MSGFMT if test -n "$INTLTOOL_MSGFMT"; then echo "$as_me:$LINENO: result: $INTLTOOL_MSGFMT" >&5 echo "${ECHO_T}$INTLTOOL_MSGFMT" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi # Extract the first word of "msgmerge", so it can be a program name with args. set dummy msgmerge; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_path_INTLTOOL_MSGMERGE+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else case $INTLTOOL_MSGMERGE in [\\/]* | ?:[\\/]*) ac_cv_path_INTLTOOL_MSGMERGE="$INTLTOOL_MSGMERGE" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_INTLTOOL_MSGMERGE="$as_dir/$ac_word$ac_exec_ext" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done test -z "$ac_cv_path_INTLTOOL_MSGMERGE" && ac_cv_path_INTLTOOL_MSGMERGE="msgmerge" ;; esac fi INTLTOOL_MSGMERGE=$ac_cv_path_INTLTOOL_MSGMERGE if test -n "$INTLTOOL_MSGMERGE"; then echo "$as_me:$LINENO: result: $INTLTOOL_MSGMERGE" >&5 echo "${ECHO_T}$INTLTOOL_MSGMERGE" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi # Extract the first word of "xgettext", so it can be a program name with args. set dummy xgettext; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_path_INTLTOOL_XGETTEXT+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else case $INTLTOOL_XGETTEXT in [\\/]* | ?:[\\/]*) ac_cv_path_INTLTOOL_XGETTEXT="$INTLTOOL_XGETTEXT" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_INTLTOOL_XGETTEXT="$as_dir/$ac_word$ac_exec_ext" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done test -z "$ac_cv_path_INTLTOOL_XGETTEXT" && ac_cv_path_INTLTOOL_XGETTEXT="xgettext" ;; esac fi INTLTOOL_XGETTEXT=$ac_cv_path_INTLTOOL_XGETTEXT if test -n "$INTLTOOL_XGETTEXT"; then echo "$as_me:$LINENO: result: $INTLTOOL_XGETTEXT" >&5 echo "${ECHO_T}$INTLTOOL_XGETTEXT" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi ac_config_commands="$ac_config_commands intltool" DEPDIR="${am__leading_dot}deps" ac_config_commands="$ac_config_commands depfiles" am_make=${MAKE-make} cat > confinc << 'END' am__doit: @echo done .PHONY: am__doit END # If we don't find an include directive, just comment out the code. echo "$as_me:$LINENO: checking for style of include used by $am_make" >&5 echo $ECHO_N "checking for style of include used by $am_make... $ECHO_C" >&6 am__include="#" am__quote= _am_result=none # First try GNU make style include. echo "include confinc" > confmf # We grep out `Entering directory' and `Leaving directory' # messages which can occur if `w' ends up in MAKEFLAGS. # In particular we don't look at `^make:' because GNU make might # be invoked under some other name (usually "gmake"), in which # case it prints its new name instead of `make'. if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then am__include=include am__quote= _am_result=GNU fi # Now try BSD make style include. if test "$am__include" = "#"; then echo '.include "confinc"' > confmf if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then am__include=.include am__quote="\"" _am_result=BSD fi fi echo "$as_me:$LINENO: result: $_am_result" >&5 echo "${ECHO_T}$_am_result" >&6 rm -f confinc confmf # Check whether --enable-dependency-tracking or --disable-dependency-tracking was given. if test "${enable_dependency_tracking+set}" = set; then enableval="$enable_dependency_tracking" fi; if test "x$enable_dependency_tracking" != xno; then am_depcomp="$ac_aux_dir/depcomp" AMDEPBACKSLASH='\' fi if test "x$enable_dependency_tracking" != xno; then AMDEP_TRUE= AMDEP_FALSE='#' else AMDEP_TRUE='#' AMDEP_FALSE= fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. set dummy ${ac_tool_prefix}gcc; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="${ac_tool_prefix}gcc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then echo "$as_me:$LINENO: result: $CC" >&5 echo "${ECHO_T}$CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi fi if test -z "$ac_cv_prog_CC"; then ac_ct_CC=$CC # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_ac_ct_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="gcc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 echo "${ECHO_T}$ac_ct_CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi CC=$ac_ct_CC else CC="$ac_cv_prog_CC" fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. set dummy ${ac_tool_prefix}cc; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="${ac_tool_prefix}cc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then echo "$as_me:$LINENO: result: $CC" >&5 echo "${ECHO_T}$CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi fi if test -z "$ac_cv_prog_CC"; then ac_ct_CC=$CC # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_ac_ct_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="cc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 echo "${ECHO_T}$ac_ct_CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi CC=$ac_ct_CC else CC="$ac_cv_prog_CC" fi fi if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else ac_prog_rejected=no as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then ac_prog_rejected=yes continue fi ac_cv_prog_CC="cc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done if test $ac_prog_rejected = yes; then # We found a bogon in the path, so make sure we never use it. set dummy $ac_cv_prog_CC shift if test $# != 0; then # We chose a different compiler from the bogus one. # However, it has the same basename, so the bogon will be chosen # first if we set CC to just the basename; use the full file name. shift ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" fi fi fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then echo "$as_me:$LINENO: result: $CC" >&5 echo "${ECHO_T}$CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then for ac_prog in cl do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="$ac_tool_prefix$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then echo "$as_me:$LINENO: result: $CC" >&5 echo "${ECHO_T}$CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi test -n "$CC" && break done fi if test -z "$CC"; then ac_ct_CC=$CC for ac_prog in cl do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_ac_ct_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 echo "${ECHO_T}$ac_ct_CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi test -n "$ac_ct_CC" && break done CC=$ac_ct_CC fi fi test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH See \`config.log' for more details." >&5 echo "$as_me: error: no acceptable C compiler found in \$PATH See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } # Provide some information about the compiler. echo "$as_me:$LINENO:" \ "checking for C compiler version" >&5 ac_compiler=`set X $ac_compile; echo $2` { (eval echo "$as_me:$LINENO: \"$ac_compiler --version &5\"") >&5 (eval $ac_compiler --version &5) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } { (eval echo "$as_me:$LINENO: \"$ac_compiler -v &5\"") >&5 (eval $ac_compiler -v &5) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } { (eval echo "$as_me:$LINENO: \"$ac_compiler -V &5\"") >&5 (eval $ac_compiler -V &5) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { ; return 0; } _ACEOF ac_clean_files_save=$ac_clean_files ac_clean_files="$ac_clean_files a.out a.exe b.out" # Try to create an executable without -o first, disregard a.out. # It will help us diagnose broken compilers, and finding out an intuition # of exeext. echo "$as_me:$LINENO: checking for C compiler default output file name" >&5 echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6 ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` if { (eval echo "$as_me:$LINENO: \"$ac_link_default\"") >&5 (eval $ac_link_default) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then # Find the output, starting from the most likely. This scheme is # not robust to junk in `.', hence go to wildcards (a.*) only as a last # resort. # Be careful to initialize this variable, since it used to be cached. # Otherwise an old cache value of `no' led to `EXEEXT = no' in a Makefile. ac_cv_exeext= # b.out is created by i960 compilers. for ac_file in a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out do test -f "$ac_file" || continue case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) ;; conftest.$ac_ext ) # This is the source file. ;; [ab].out ) # We found the default executable, but exeext='' is most # certainly right. break;; *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` # FIXME: I believe we export ac_cv_exeext for Libtool, # but it would be cool to find out if it's true. Does anybody # maintain Libtool? --akim. export ac_cv_exeext break;; * ) break;; esac done else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 { { echo "$as_me:$LINENO: error: C compiler cannot create executables See \`config.log' for more details." >&5 echo "$as_me: error: C compiler cannot create executables See \`config.log' for more details." >&2;} { (exit 77); exit 77; }; } fi ac_exeext=$ac_cv_exeext echo "$as_me:$LINENO: result: $ac_file" >&5 echo "${ECHO_T}$ac_file" >&6 # Check the compiler produces executables we can run. If not, either # the compiler is broken, or we cross compile. echo "$as_me:$LINENO: checking whether the C compiler works" >&5 echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6 # FIXME: These cross compiler hacks should be removed for Autoconf 3.0 # If not cross compiling, check that we can run a simple program. if test "$cross_compiling" != yes; then if { ac_try='./$ac_file' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then cross_compiling=no else if test "$cross_compiling" = maybe; then cross_compiling=yes else { { echo "$as_me:$LINENO: error: cannot run C compiled programs. If you meant to cross compile, use \`--host'. See \`config.log' for more details." >&5 echo "$as_me: error: cannot run C compiled programs. If you meant to cross compile, use \`--host'. See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } fi fi fi echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6 rm -f a.out a.exe conftest$ac_cv_exeext b.out ac_clean_files=$ac_clean_files_save # Check the compiler produces executables we can run. If not, either # the compiler is broken, or we cross compile. echo "$as_me:$LINENO: checking whether we are cross compiling" >&5 echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6 echo "$as_me:$LINENO: result: $cross_compiling" >&5 echo "${ECHO_T}$cross_compiling" >&6 echo "$as_me:$LINENO: checking for suffix of executables" >&5 echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6 if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then # If both `conftest.exe' and `conftest' are `present' (well, observable) # catch `conftest.exe'. For instance with Cygwin, `ls conftest' will # work properly (i.e., refer to `conftest.exe'), while it won't with # `rm'. for ac_file in conftest.exe conftest conftest.*; do test -f "$ac_file" || continue case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) ;; *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` export ac_cv_exeext break;; * ) break;; esac done else { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link See \`config.log' for more details." >&5 echo "$as_me: error: cannot compute suffix of executables: cannot compile and link See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } fi rm -f conftest$ac_cv_exeext echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5 echo "${ECHO_T}$ac_cv_exeext" >&6 rm -f conftest.$ac_ext EXEEXT=$ac_cv_exeext ac_exeext=$EXEEXT echo "$as_me:$LINENO: checking for suffix of object files" >&5 echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6 if test "${ac_cv_objext+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { ; return 0; } _ACEOF rm -f conftest.o conftest.obj if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg ) ;; *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` break;; esac done else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 { { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile See \`config.log' for more details." >&5 echo "$as_me: error: cannot compute suffix of object files: cannot compile See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } fi rm -f conftest.$ac_cv_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_objext" >&5 echo "${ECHO_T}$ac_cv_objext" >&6 OBJEXT=$ac_cv_objext ac_objext=$OBJEXT echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5 echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6 if test "${ac_cv_c_compiler_gnu+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { #ifndef __GNUC__ choke me #endif ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_compiler_gnu=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_compiler_gnu=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_c_compiler_gnu=$ac_compiler_gnu fi echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5 echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6 GCC=`test $ac_compiler_gnu = yes && echo yes` ac_test_CFLAGS=${CFLAGS+set} ac_save_CFLAGS=$CFLAGS CFLAGS="-g" echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6 if test "${ac_cv_prog_cc_g+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_prog_cc_g=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_prog_cc_g=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 echo "${ECHO_T}$ac_cv_prog_cc_g" >&6 if test "$ac_test_CFLAGS" = set; then CFLAGS=$ac_save_CFLAGS elif test $ac_cv_prog_cc_g = yes; then if test "$GCC" = yes; then CFLAGS="-g -O2" else CFLAGS="-g" fi else if test "$GCC" = yes; then CFLAGS="-O2" else CFLAGS= fi fi echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5 echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6 if test "${ac_cv_prog_cc_stdc+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_cv_prog_cc_stdc=no ac_save_CC=$CC cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include #include #include #include /* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ struct buf { int x; }; FILE * (*rcsopen) (struct buf *, struct stat *, int); static char *e (p, i) char **p; int i; { return p[i]; } static char *f (char * (*g) (char **, int), char **p, ...) { char *s; va_list v; va_start (v,p); s = g (p, va_arg (v,int)); va_end (v); return s; } /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has function prototypes and stuff, but not '\xHH' hex character constants. These don't provoke an error unfortunately, instead are silently treated as 'x'. The following induces an error, until -std1 is added to get proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an array size at least. It's necessary to write '\x00'==0 to get something that's true only with -std1. */ int osf4_cc_array ['\x00' == 0 ? 1 : -1]; int test (int i, double x); struct s1 {int (*f) (int a);}; struct s2 {int (*f) (double a);}; int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); int argc; char **argv; int main () { return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; ; return 0; } _ACEOF # Don't try gcc -ansi; that turns off useful extensions and # breaks some systems' header files. # AIX -qlanglvl=ansi # Ultrix and OSF/1 -std1 # HP-UX 10.20 and later -Ae # HP-UX older versions -Aa -D_HPUX_SOURCE # SVR4 -Xc -D__EXTENSIONS__ for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" do CC="$ac_save_CC $ac_arg" rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_prog_cc_stdc=$ac_arg break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext done rm -f conftest.$ac_ext conftest.$ac_objext CC=$ac_save_CC fi case "x$ac_cv_prog_cc_stdc" in x|xno) echo "$as_me:$LINENO: result: none needed" >&5 echo "${ECHO_T}none needed" >&6 ;; *) echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5 echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6 CC="$CC $ac_cv_prog_cc_stdc" ;; esac # Some people use a C++ compiler to compile C. Since we use `exit', # in C++ we need to declare it. In case someone uses the same compiler # for both compiling C and C++ we need to have the C++ compiler decide # the declaration of exit, since it's the most demanding environment. cat >conftest.$ac_ext <<_ACEOF #ifndef __cplusplus choke me #endif _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then for ac_declaration in \ '' \ 'extern "C" void std::exit (int) throw (); using std::exit;' \ 'extern "C" void std::exit (int); using std::exit;' \ 'extern "C" void exit (int) throw ();' \ 'extern "C" void exit (int);' \ 'void exit (int);' do cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_declaration #include int main () { exit (42); ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then : else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 continue fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_declaration int main () { exit (42); ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext done rm -f conftest* if test -n "$ac_declaration"; then echo '#ifdef __cplusplus' >>confdefs.h echo $ac_declaration >>confdefs.h echo '#endif' >>confdefs.h fi else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu depcc="$CC" am_compiler_list= echo "$as_me:$LINENO: checking dependency style of $depcc" >&5 echo $ECHO_N "checking dependency style of $depcc... $ECHO_C" >&6 if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then # We make a subdir and do the tests there. Otherwise we can end up # making bogus files that we don't know about and never remove. For # instance it was reported that on HP-UX the gcc test will end up # making a dummy file named `D' -- because `-MD' means `put the output # in D'. mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. cp "$am_depcomp" conftest.dir cd conftest.dir # We will build objects and dependencies in a subdirectory because # it helps to detect inapplicable dependency modes. For instance # both Tru64's cc and ICC support -MD to output dependencies as a # side effect of compilation, but ICC will put the dependencies in # the current directory while Tru64 will put them in the object # directory. mkdir sub am_cv_CC_dependencies_compiler_type=none if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` fi for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers # like to wrap large dependency lists on column 80 (with \), and # we should not choose a depcomp mode which is confused by this. # # We need to recreate these files for each test, as the compiler may # overwrite some of them when testing with obscure command lines. # This happens at least with the AIX C compiler. : > sub/conftest.c for i in 1 2 3 4 5 6; do echo '#include "conftst'$i'.h"' >> sub/conftest.c # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with # Solaris 8's {/usr,}/bin/sh. touch sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf case $depmode in nosideeffect) # after this tag, mechanisms are not by side-effect, so they'll # only be used when explicitly requested if test "x$enable_dependency_tracking" = xyes; then continue else break fi ;; none) break ;; esac # We check with `-c' and `-o' for the sake of the "dashmstdout" # mode. It turns out that the SunPro C++ compiler does not properly # handle `-M -o', and we need to detect this. if depmode=$depmode \ source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings # or remarks (even with -Werror). So we grep stderr for any message # that says an option was ignored or not supported. # When given -MP, icc 7.0 and 7.1 complain thusly: # icc: Command line warning: ignoring option '-M'; no argument required # The diagnosis changed in icc 8.0: # icc: Command line remark: option '-MP' not supported if (grep 'ignoring option' conftest.err || grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else am_cv_CC_dependencies_compiler_type=$depmode break fi fi done cd .. rm -rf conftest.dir else am_cv_CC_dependencies_compiler_type=none fi fi echo "$as_me:$LINENO: result: $am_cv_CC_dependencies_compiler_type" >&5 echo "${ECHO_T}$am_cv_CC_dependencies_compiler_type" >&6 CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type if test "x$enable_dependency_tracking" != xno \ && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then am__fastdepCC_TRUE= am__fastdepCC_FALSE='#' else am__fastdepCC_TRUE='#' am__fastdepCC_FALSE= fi echo "$as_me:$LINENO: checking for library containing strerror" >&5 echo $ECHO_N "checking for library containing strerror... $ECHO_C" >&6 if test "${ac_cv_search_strerror+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_func_search_save_LIBS=$LIBS ac_cv_search_strerror=no cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char strerror (); int main () { strerror (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_search_strerror="none required" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test "$ac_cv_search_strerror" = no; then for ac_lib in cposix; do LIBS="-l$ac_lib $ac_func_search_save_LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char strerror (); int main () { strerror (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_search_strerror="-l$ac_lib" break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext done fi LIBS=$ac_func_search_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_search_strerror" >&5 echo "${ECHO_T}$ac_cv_search_strerror" >&6 if test "$ac_cv_search_strerror" != no; then test "$ac_cv_search_strerror" = "none required" || LIBS="$ac_cv_search_strerror $LIBS" fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. set dummy ${ac_tool_prefix}gcc; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="${ac_tool_prefix}gcc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then echo "$as_me:$LINENO: result: $CC" >&5 echo "${ECHO_T}$CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi fi if test -z "$ac_cv_prog_CC"; then ac_ct_CC=$CC # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_ac_ct_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="gcc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 echo "${ECHO_T}$ac_ct_CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi CC=$ac_ct_CC else CC="$ac_cv_prog_CC" fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. set dummy ${ac_tool_prefix}cc; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="${ac_tool_prefix}cc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then echo "$as_me:$LINENO: result: $CC" >&5 echo "${ECHO_T}$CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi fi if test -z "$ac_cv_prog_CC"; then ac_ct_CC=$CC # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_ac_ct_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="cc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 echo "${ECHO_T}$ac_ct_CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi CC=$ac_ct_CC else CC="$ac_cv_prog_CC" fi fi if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else ac_prog_rejected=no as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then ac_prog_rejected=yes continue fi ac_cv_prog_CC="cc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done if test $ac_prog_rejected = yes; then # We found a bogon in the path, so make sure we never use it. set dummy $ac_cv_prog_CC shift if test $# != 0; then # We chose a different compiler from the bogus one. # However, it has the same basename, so the bogon will be chosen # first if we set CC to just the basename; use the full file name. shift ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" fi fi fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then echo "$as_me:$LINENO: result: $CC" >&5 echo "${ECHO_T}$CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then for ac_prog in cl do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="$ac_tool_prefix$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then echo "$as_me:$LINENO: result: $CC" >&5 echo "${ECHO_T}$CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi test -n "$CC" && break done fi if test -z "$CC"; then ac_ct_CC=$CC for ac_prog in cl do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_ac_ct_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 echo "${ECHO_T}$ac_ct_CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi test -n "$ac_ct_CC" && break done CC=$ac_ct_CC fi fi test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH See \`config.log' for more details." >&5 echo "$as_me: error: no acceptable C compiler found in \$PATH See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } # Provide some information about the compiler. echo "$as_me:$LINENO:" \ "checking for C compiler version" >&5 ac_compiler=`set X $ac_compile; echo $2` { (eval echo "$as_me:$LINENO: \"$ac_compiler --version &5\"") >&5 (eval $ac_compiler --version &5) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } { (eval echo "$as_me:$LINENO: \"$ac_compiler -v &5\"") >&5 (eval $ac_compiler -v &5) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } { (eval echo "$as_me:$LINENO: \"$ac_compiler -V &5\"") >&5 (eval $ac_compiler -V &5) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5 echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6 if test "${ac_cv_c_compiler_gnu+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { #ifndef __GNUC__ choke me #endif ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_compiler_gnu=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_compiler_gnu=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_c_compiler_gnu=$ac_compiler_gnu fi echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5 echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6 GCC=`test $ac_compiler_gnu = yes && echo yes` ac_test_CFLAGS=${CFLAGS+set} ac_save_CFLAGS=$CFLAGS CFLAGS="-g" echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6 if test "${ac_cv_prog_cc_g+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_prog_cc_g=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_prog_cc_g=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 echo "${ECHO_T}$ac_cv_prog_cc_g" >&6 if test "$ac_test_CFLAGS" = set; then CFLAGS=$ac_save_CFLAGS elif test $ac_cv_prog_cc_g = yes; then if test "$GCC" = yes; then CFLAGS="-g -O2" else CFLAGS="-g" fi else if test "$GCC" = yes; then CFLAGS="-O2" else CFLAGS= fi fi echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5 echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6 if test "${ac_cv_prog_cc_stdc+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_cv_prog_cc_stdc=no ac_save_CC=$CC cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include #include #include #include /* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ struct buf { int x; }; FILE * (*rcsopen) (struct buf *, struct stat *, int); static char *e (p, i) char **p; int i; { return p[i]; } static char *f (char * (*g) (char **, int), char **p, ...) { char *s; va_list v; va_start (v,p); s = g (p, va_arg (v,int)); va_end (v); return s; } /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has function prototypes and stuff, but not '\xHH' hex character constants. These don't provoke an error unfortunately, instead are silently treated as 'x'. The following induces an error, until -std1 is added to get proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an array size at least. It's necessary to write '\x00'==0 to get something that's true only with -std1. */ int osf4_cc_array ['\x00' == 0 ? 1 : -1]; int test (int i, double x); struct s1 {int (*f) (int a);}; struct s2 {int (*f) (double a);}; int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); int argc; char **argv; int main () { return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; ; return 0; } _ACEOF # Don't try gcc -ansi; that turns off useful extensions and # breaks some systems' header files. # AIX -qlanglvl=ansi # Ultrix and OSF/1 -std1 # HP-UX 10.20 and later -Ae # HP-UX older versions -Aa -D_HPUX_SOURCE # SVR4 -Xc -D__EXTENSIONS__ for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" do CC="$ac_save_CC $ac_arg" rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_prog_cc_stdc=$ac_arg break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext done rm -f conftest.$ac_ext conftest.$ac_objext CC=$ac_save_CC fi case "x$ac_cv_prog_cc_stdc" in x|xno) echo "$as_me:$LINENO: result: none needed" >&5 echo "${ECHO_T}none needed" >&6 ;; *) echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5 echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6 CC="$CC $ac_cv_prog_cc_stdc" ;; esac # Some people use a C++ compiler to compile C. Since we use `exit', # in C++ we need to declare it. In case someone uses the same compiler # for both compiling C and C++ we need to have the C++ compiler decide # the declaration of exit, since it's the most demanding environment. cat >conftest.$ac_ext <<_ACEOF #ifndef __cplusplus choke me #endif _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then for ac_declaration in \ '' \ 'extern "C" void std::exit (int) throw (); using std::exit;' \ 'extern "C" void std::exit (int); using std::exit;' \ 'extern "C" void exit (int) throw ();' \ 'extern "C" void exit (int);' \ 'void exit (int);' do cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_declaration #include int main () { exit (42); ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then : else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 continue fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_declaration int main () { exit (42); ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext done rm -f conftest* if test -n "$ac_declaration"; then echo '#ifdef __cplusplus' >>confdefs.h echo $ac_declaration >>confdefs.h echo '#endif' >>confdefs.h fi else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu depcc="$CC" am_compiler_list= echo "$as_me:$LINENO: checking dependency style of $depcc" >&5 echo $ECHO_N "checking dependency style of $depcc... $ECHO_C" >&6 if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then # We make a subdir and do the tests there. Otherwise we can end up # making bogus files that we don't know about and never remove. For # instance it was reported that on HP-UX the gcc test will end up # making a dummy file named `D' -- because `-MD' means `put the output # in D'. mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. cp "$am_depcomp" conftest.dir cd conftest.dir # We will build objects and dependencies in a subdirectory because # it helps to detect inapplicable dependency modes. For instance # both Tru64's cc and ICC support -MD to output dependencies as a # side effect of compilation, but ICC will put the dependencies in # the current directory while Tru64 will put them in the object # directory. mkdir sub am_cv_CC_dependencies_compiler_type=none if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` fi for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers # like to wrap large dependency lists on column 80 (with \), and # we should not choose a depcomp mode which is confused by this. # # We need to recreate these files for each test, as the compiler may # overwrite some of them when testing with obscure command lines. # This happens at least with the AIX C compiler. : > sub/conftest.c for i in 1 2 3 4 5 6; do echo '#include "conftst'$i'.h"' >> sub/conftest.c # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with # Solaris 8's {/usr,}/bin/sh. touch sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf case $depmode in nosideeffect) # after this tag, mechanisms are not by side-effect, so they'll # only be used when explicitly requested if test "x$enable_dependency_tracking" = xyes; then continue else break fi ;; none) break ;; esac # We check with `-c' and `-o' for the sake of the "dashmstdout" # mode. It turns out that the SunPro C++ compiler does not properly # handle `-M -o', and we need to detect this. if depmode=$depmode \ source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings # or remarks (even with -Werror). So we grep stderr for any message # that says an option was ignored or not supported. # When given -MP, icc 7.0 and 7.1 complain thusly: # icc: Command line warning: ignoring option '-M'; no argument required # The diagnosis changed in icc 8.0: # icc: Command line remark: option '-MP' not supported if (grep 'ignoring option' conftest.err || grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else am_cv_CC_dependencies_compiler_type=$depmode break fi fi done cd .. rm -rf conftest.dir else am_cv_CC_dependencies_compiler_type=none fi fi echo "$as_me:$LINENO: result: $am_cv_CC_dependencies_compiler_type" >&5 echo "${ECHO_T}$am_cv_CC_dependencies_compiler_type" >&6 CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type if test "x$enable_dependency_tracking" != xno \ && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then am__fastdepCC_TRUE= am__fastdepCC_FALSE='#' else am__fastdepCC_TRUE='#' am__fastdepCC_FALSE= fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. set dummy ${ac_tool_prefix}gcc; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="${ac_tool_prefix}gcc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then echo "$as_me:$LINENO: result: $CC" >&5 echo "${ECHO_T}$CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi fi if test -z "$ac_cv_prog_CC"; then ac_ct_CC=$CC # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_ac_ct_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="gcc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 echo "${ECHO_T}$ac_ct_CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi CC=$ac_ct_CC else CC="$ac_cv_prog_CC" fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. set dummy ${ac_tool_prefix}cc; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="${ac_tool_prefix}cc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then echo "$as_me:$LINENO: result: $CC" >&5 echo "${ECHO_T}$CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi fi if test -z "$ac_cv_prog_CC"; then ac_ct_CC=$CC # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_ac_ct_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="cc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 echo "${ECHO_T}$ac_ct_CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi CC=$ac_ct_CC else CC="$ac_cv_prog_CC" fi fi if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else ac_prog_rejected=no as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then ac_prog_rejected=yes continue fi ac_cv_prog_CC="cc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done if test $ac_prog_rejected = yes; then # We found a bogon in the path, so make sure we never use it. set dummy $ac_cv_prog_CC shift if test $# != 0; then # We chose a different compiler from the bogus one. # However, it has the same basename, so the bogon will be chosen # first if we set CC to just the basename; use the full file name. shift ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" fi fi fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then echo "$as_me:$LINENO: result: $CC" >&5 echo "${ECHO_T}$CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then for ac_prog in cl do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="$ac_tool_prefix$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then echo "$as_me:$LINENO: result: $CC" >&5 echo "${ECHO_T}$CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi test -n "$CC" && break done fi if test -z "$CC"; then ac_ct_CC=$CC for ac_prog in cl do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_ac_ct_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 echo "${ECHO_T}$ac_ct_CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi test -n "$ac_ct_CC" && break done CC=$ac_ct_CC fi fi test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH See \`config.log' for more details." >&5 echo "$as_me: error: no acceptable C compiler found in \$PATH See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } # Provide some information about the compiler. echo "$as_me:$LINENO:" \ "checking for C compiler version" >&5 ac_compiler=`set X $ac_compile; echo $2` { (eval echo "$as_me:$LINENO: \"$ac_compiler --version &5\"") >&5 (eval $ac_compiler --version &5) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } { (eval echo "$as_me:$LINENO: \"$ac_compiler -v &5\"") >&5 (eval $ac_compiler -v &5) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } { (eval echo "$as_me:$LINENO: \"$ac_compiler -V &5\"") >&5 (eval $ac_compiler -V &5) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5 echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6 if test "${ac_cv_c_compiler_gnu+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { #ifndef __GNUC__ choke me #endif ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_compiler_gnu=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_compiler_gnu=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_c_compiler_gnu=$ac_compiler_gnu fi echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5 echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6 GCC=`test $ac_compiler_gnu = yes && echo yes` ac_test_CFLAGS=${CFLAGS+set} ac_save_CFLAGS=$CFLAGS CFLAGS="-g" echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6 if test "${ac_cv_prog_cc_g+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_prog_cc_g=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_prog_cc_g=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 echo "${ECHO_T}$ac_cv_prog_cc_g" >&6 if test "$ac_test_CFLAGS" = set; then CFLAGS=$ac_save_CFLAGS elif test $ac_cv_prog_cc_g = yes; then if test "$GCC" = yes; then CFLAGS="-g -O2" else CFLAGS="-g" fi else if test "$GCC" = yes; then CFLAGS="-O2" else CFLAGS= fi fi echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5 echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6 if test "${ac_cv_prog_cc_stdc+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_cv_prog_cc_stdc=no ac_save_CC=$CC cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include #include #include #include /* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ struct buf { int x; }; FILE * (*rcsopen) (struct buf *, struct stat *, int); static char *e (p, i) char **p; int i; { return p[i]; } static char *f (char * (*g) (char **, int), char **p, ...) { char *s; va_list v; va_start (v,p); s = g (p, va_arg (v,int)); va_end (v); return s; } /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has function prototypes and stuff, but not '\xHH' hex character constants. These don't provoke an error unfortunately, instead are silently treated as 'x'. The following induces an error, until -std1 is added to get proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an array size at least. It's necessary to write '\x00'==0 to get something that's true only with -std1. */ int osf4_cc_array ['\x00' == 0 ? 1 : -1]; int test (int i, double x); struct s1 {int (*f) (int a);}; struct s2 {int (*f) (double a);}; int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); int argc; char **argv; int main () { return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; ; return 0; } _ACEOF # Don't try gcc -ansi; that turns off useful extensions and # breaks some systems' header files. # AIX -qlanglvl=ansi # Ultrix and OSF/1 -std1 # HP-UX 10.20 and later -Ae # HP-UX older versions -Aa -D_HPUX_SOURCE # SVR4 -Xc -D__EXTENSIONS__ for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" do CC="$ac_save_CC $ac_arg" rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_prog_cc_stdc=$ac_arg break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext done rm -f conftest.$ac_ext conftest.$ac_objext CC=$ac_save_CC fi case "x$ac_cv_prog_cc_stdc" in x|xno) echo "$as_me:$LINENO: result: none needed" >&5 echo "${ECHO_T}none needed" >&6 ;; *) echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5 echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6 CC="$CC $ac_cv_prog_cc_stdc" ;; esac # Some people use a C++ compiler to compile C. Since we use `exit', # in C++ we need to declare it. In case someone uses the same compiler # for both compiling C and C++ we need to have the C++ compiler decide # the declaration of exit, since it's the most demanding environment. cat >conftest.$ac_ext <<_ACEOF #ifndef __cplusplus choke me #endif _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then for ac_declaration in \ '' \ 'extern "C" void std::exit (int) throw (); using std::exit;' \ 'extern "C" void std::exit (int); using std::exit;' \ 'extern "C" void exit (int) throw ();' \ 'extern "C" void exit (int);' \ 'void exit (int);' do cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_declaration #include int main () { exit (42); ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then : else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 continue fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_declaration int main () { exit (42); ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext done rm -f conftest* if test -n "$ac_declaration"; then echo '#ifdef __cplusplus' >>confdefs.h echo $ac_declaration >>confdefs.h echo '#endif' >>confdefs.h fi else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu depcc="$CC" am_compiler_list= echo "$as_me:$LINENO: checking dependency style of $depcc" >&5 echo $ECHO_N "checking dependency style of $depcc... $ECHO_C" >&6 if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then # We make a subdir and do the tests there. Otherwise we can end up # making bogus files that we don't know about and never remove. For # instance it was reported that on HP-UX the gcc test will end up # making a dummy file named `D' -- because `-MD' means `put the output # in D'. mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. cp "$am_depcomp" conftest.dir cd conftest.dir # We will build objects and dependencies in a subdirectory because # it helps to detect inapplicable dependency modes. For instance # both Tru64's cc and ICC support -MD to output dependencies as a # side effect of compilation, but ICC will put the dependencies in # the current directory while Tru64 will put them in the object # directory. mkdir sub am_cv_CC_dependencies_compiler_type=none if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` fi for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers # like to wrap large dependency lists on column 80 (with \), and # we should not choose a depcomp mode which is confused by this. # # We need to recreate these files for each test, as the compiler may # overwrite some of them when testing with obscure command lines. # This happens at least with the AIX C compiler. : > sub/conftest.c for i in 1 2 3 4 5 6; do echo '#include "conftst'$i'.h"' >> sub/conftest.c # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with # Solaris 8's {/usr,}/bin/sh. touch sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf case $depmode in nosideeffect) # after this tag, mechanisms are not by side-effect, so they'll # only be used when explicitly requested if test "x$enable_dependency_tracking" = xyes; then continue else break fi ;; none) break ;; esac # We check with `-c' and `-o' for the sake of the "dashmstdout" # mode. It turns out that the SunPro C++ compiler does not properly # handle `-M -o', and we need to detect this. if depmode=$depmode \ source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings # or remarks (even with -Werror). So we grep stderr for any message # that says an option was ignored or not supported. # When given -MP, icc 7.0 and 7.1 complain thusly: # icc: Command line warning: ignoring option '-M'; no argument required # The diagnosis changed in icc 8.0: # icc: Command line remark: option '-MP' not supported if (grep 'ignoring option' conftest.err || grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else am_cv_CC_dependencies_compiler_type=$depmode break fi fi done cd .. rm -rf conftest.dir else am_cv_CC_dependencies_compiler_type=none fi fi echo "$as_me:$LINENO: result: $am_cv_CC_dependencies_compiler_type" >&5 echo "${ECHO_T}$am_cv_CC_dependencies_compiler_type" >&6 CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type if test "x$enable_dependency_tracking" != xno \ && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then am__fastdepCC_TRUE= am__fastdepCC_FALSE='#' else am__fastdepCC_TRUE='#' am__fastdepCC_FALSE= fi am_cv_prog_cc_stdc=$ac_cv_prog_cc_stdc ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5 echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6 # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then CPP= fi if test -z "$CPP"; then if test "${ac_cv_prog_CPP+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else # Double quotes because CPP needs to be expanded for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" do ac_preproc_ok=false for ac_c_preproc_warn_flag in '' yes do # Use a header file that comes with gcc, so configuring glibc # with a fresh cross-compiler works. # Prefer to if __STDC__ is defined, since # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #ifdef __STDC__ # include #else # include #endif Syntax error _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_c_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then : else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 # Broken: fails on valid input. continue fi rm -f conftest.err conftest.$ac_ext # OK, works on sane cases. Now check whether non-existent headers # can be detected and how. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_c_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then # Broken: success on invalid input. continue else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 # Passes both tests. ac_preproc_ok=: break fi rm -f conftest.err conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.err conftest.$ac_ext if $ac_preproc_ok; then break fi done ac_cv_prog_CPP=$CPP fi CPP=$ac_cv_prog_CPP else ac_cv_prog_CPP=$CPP fi echo "$as_me:$LINENO: result: $CPP" >&5 echo "${ECHO_T}$CPP" >&6 ac_preproc_ok=false for ac_c_preproc_warn_flag in '' yes do # Use a header file that comes with gcc, so configuring glibc # with a fresh cross-compiler works. # Prefer to if __STDC__ is defined, since # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #ifdef __STDC__ # include #else # include #endif Syntax error _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_c_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then : else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 # Broken: fails on valid input. continue fi rm -f conftest.err conftest.$ac_ext # OK, works on sane cases. Now check whether non-existent headers # can be detected and how. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_c_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then # Broken: success on invalid input. continue else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 # Passes both tests. ac_preproc_ok=: break fi rm -f conftest.err conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.err conftest.$ac_ext if $ac_preproc_ok; then : else { { echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check See \`config.log' for more details." >&5 echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu echo "$as_me:$LINENO: checking for egrep" >&5 echo $ECHO_N "checking for egrep... $ECHO_C" >&6 if test "${ac_cv_prog_egrep+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if echo a | (grep -E '(a|b)') >/dev/null 2>&1 then ac_cv_prog_egrep='grep -E' else ac_cv_prog_egrep='egrep' fi fi echo "$as_me:$LINENO: result: $ac_cv_prog_egrep" >&5 echo "${ECHO_T}$ac_cv_prog_egrep" >&6 EGREP=$ac_cv_prog_egrep echo "$as_me:$LINENO: checking for ANSI C header files" >&5 echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6 if test "${ac_cv_header_stdc+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include #include #include #include int main () { ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_header_stdc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_header_stdc=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "memchr" >/dev/null 2>&1; then : else ac_cv_header_stdc=no fi rm -f conftest* fi if test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "free" >/dev/null 2>&1; then : else ac_cv_header_stdc=no fi rm -f conftest* fi if test $ac_cv_header_stdc = yes; then # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. if test "$cross_compiling" = yes; then : else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include #if ((' ' & 0x0FF) == 0x020) # define ISLOWER(c) ('a' <= (c) && (c) <= 'z') # define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) #else # define ISLOWER(c) \ (('a' <= (c) && (c) <= 'i') \ || ('j' <= (c) && (c) <= 'r') \ || ('s' <= (c) && (c) <= 'z')) # define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) #endif #define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) int main () { int i; for (i = 0; i < 256; i++) if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2); exit (0); } _ACEOF rm -f conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='./conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then : else echo "$as_me: program exited with status $ac_status" >&5 echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) ac_cv_header_stdc=no fi rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi fi fi echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 echo "${ECHO_T}$ac_cv_header_stdc" >&6 if test $ac_cv_header_stdc = yes; then cat >>confdefs.h <<\_ACEOF #define STDC_HEADERS 1 _ACEOF fi if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. set dummy ${ac_tool_prefix}ranlib; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_RANLIB+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$RANLIB"; then ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi RANLIB=$ac_cv_prog_RANLIB if test -n "$RANLIB"; then echo "$as_me:$LINENO: result: $RANLIB" >&5 echo "${ECHO_T}$RANLIB" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi fi if test -z "$ac_cv_prog_RANLIB"; then ac_ct_RANLIB=$RANLIB # Extract the first word of "ranlib", so it can be a program name with args. set dummy ranlib; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$ac_ct_RANLIB"; then ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_RANLIB="ranlib" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done test -z "$ac_cv_prog_ac_ct_RANLIB" && ac_cv_prog_ac_ct_RANLIB=":" fi fi ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB if test -n "$ac_ct_RANLIB"; then echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5 echo "${ECHO_T}$ac_ct_RANLIB" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi RANLIB=$ac_ct_RANLIB else RANLIB="$ac_cv_prog_RANLIB" fi # Check whether --enable-compile-warnings or --disable-compile-warnings was given. if test "${enable_compile_warnings+set}" = set; then enableval="$enable_compile_warnings" else enable_compile_warnings="yes" fi; warnCFLAGS= if test "x$GCC" != xyes; then enable_compile_warnings=no fi warning_flags= realsave_CFLAGS="$CFLAGS" case "$enable_compile_warnings" in no) warning_flags= ;; minimum) warning_flags="-Wall" ;; yes) warning_flags="-Wall -Wmissing-prototypes" ;; maximum|error) warning_flags="-Wall -Wmissing-prototypes -Wnested-externs -Wpointer-arith" CFLAGS="$warning_flags $CFLAGS" for option in -Wno-sign-compare; do SAVE_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $option" echo "$as_me:$LINENO: checking whether gcc understands $option" >&5 echo $ECHO_N "checking whether gcc understands $option... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then has_option=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 has_option=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext CFLAGS="$SAVE_CFLAGS" echo "$as_me:$LINENO: result: $has_option" >&5 echo "${ECHO_T}$has_option" >&6 if test $has_option = yes; then warning_flags="$warning_flags $option" fi unset has_option unset SAVE_CFLAGS done unset option if test "$enable_compile_warnings" = "error" ; then warning_flags="$warning_flags -Werror" fi ;; *) { { echo "$as_me:$LINENO: error: Unknown argument '$enable_compile_warnings' to --enable-compile-warnings" >&5 echo "$as_me: error: Unknown argument '$enable_compile_warnings' to --enable-compile-warnings" >&2;} { (exit 1); exit 1; }; } ;; esac CFLAGS="$realsave_CFLAGS" echo "$as_me:$LINENO: checking what warning flags to pass to the C compiler" >&5 echo $ECHO_N "checking what warning flags to pass to the C compiler... $ECHO_C" >&6 echo "$as_me:$LINENO: result: $warning_flags" >&5 echo "${ECHO_T}$warning_flags" >&6 # Check whether --enable-iso-c or --disable-iso-c was given. if test "${enable_iso_c+set}" = set; then enableval="$enable_iso_c" else enable_iso_c=no fi; echo "$as_me:$LINENO: checking what language compliance flags to pass to the C compiler" >&5 echo $ECHO_N "checking what language compliance flags to pass to the C compiler... $ECHO_C" >&6 complCFLAGS= if test "x$enable_iso_c" != "xno"; then if test "x$GCC" = "xyes"; then case " $CFLAGS " in *\ \ -ansi\ \ *) ;; *) complCFLAGS="$complCFLAGS -ansi" ;; esac case " $CFLAGS " in *\ \ -pedantic\ \ *) ;; *) complCFLAGS="$complCFLAGS -pedantic" ;; esac fi fi echo "$as_me:$LINENO: result: $complCFLAGS" >&5 echo "${ECHO_T}$complCFLAGS" >&6 WARN_CFLAGS="$warning_flags $complCFLAGS" LIBGNOME_REQUIRED=2.0.1 LIBGNOMEUI_REQUIRED=2.0.1 LIBXML_REQUIRED=2.4.23 GDK_PIXBUF_REQUIRED=2.0.5 #LIBGLADE_REQUIRED=2.0.0 LIBGNOMECANVAS_REQUIRED=2.0.1 LIBBONOBOUI_REQUIRED=2.0.0 ATOMIX_MODULES="libgnome-2.0 >= $LIBGNOME_REQUIRED libgnomeui-2.0 >= $LIBGNOMEUI_REQUIRED libxml-2.0 >= $LIBXML_REQUIRED gdk-pixbuf-2.0 >= $GDK_PIXBUF_REQUIRED libgnomecanvas-2.0 >= $LIBGNOMECANVAS_REQUIRED libbonoboui-2.0 >= $LIBBONOBOUI_REQUIRED" #libglade-2.0 >= $LIBGLADE_REQUIRED if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. set dummy ${ac_tool_prefix}pkg-config; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_path_PKG_CONFIG+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else case $PKG_CONFIG in [\\/]* | ?:[\\/]*) ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done ;; esac fi PKG_CONFIG=$ac_cv_path_PKG_CONFIG if test -n "$PKG_CONFIG"; then echo "$as_me:$LINENO: result: $PKG_CONFIG" >&5 echo "${ECHO_T}$PKG_CONFIG" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi fi if test -z "$ac_cv_path_PKG_CONFIG"; then ac_pt_PKG_CONFIG=$PKG_CONFIG # Extract the first word of "pkg-config", so it can be a program name with args. set dummy pkg-config; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_path_ac_pt_PKG_CONFIG+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else case $ac_pt_PKG_CONFIG in [\\/]* | ?:[\\/]*) ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done ;; esac fi ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG if test -n "$ac_pt_PKG_CONFIG"; then echo "$as_me:$LINENO: result: $ac_pt_PKG_CONFIG" >&5 echo "${ECHO_T}$ac_pt_PKG_CONFIG" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi PKG_CONFIG=$ac_pt_PKG_CONFIG else PKG_CONFIG="$ac_cv_path_PKG_CONFIG" fi fi if test -n "$PKG_CONFIG"; then _pkg_min_version=0.9.0 echo "$as_me:$LINENO: checking pkg-config is at least version $_pkg_min_version" >&5 echo $ECHO_N "checking pkg-config is at least version $_pkg_min_version... $ECHO_C" >&6 if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 PKG_CONFIG="" fi fi pkg_failed=no echo "$as_me:$LINENO: checking for ATOMIX" >&5 echo $ECHO_N "checking for ATOMIX... $ECHO_C" >&6 if test -n "$PKG_CONFIG"; then if test -n "$ATOMIX_CFLAGS"; then pkg_cv_ATOMIX_CFLAGS="$ATOMIX_CFLAGS" else if test -n "$PKG_CONFIG" && \ { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"\$ATOMIX_MODULES\"") >&5 ($PKG_CONFIG --exists --print-errors "$ATOMIX_MODULES") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then pkg_cv_ATOMIX_CFLAGS=`$PKG_CONFIG --cflags "$ATOMIX_MODULES" 2>/dev/null` else pkg_failed=yes fi fi else pkg_failed=untried fi if test -n "$PKG_CONFIG"; then if test -n "$ATOMIX_LIBS"; then pkg_cv_ATOMIX_LIBS="$ATOMIX_LIBS" else if test -n "$PKG_CONFIG" && \ { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"\$ATOMIX_MODULES\"") >&5 ($PKG_CONFIG --exists --print-errors "$ATOMIX_MODULES") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then pkg_cv_ATOMIX_LIBS=`$PKG_CONFIG --libs "$ATOMIX_MODULES" 2>/dev/null` else pkg_failed=yes fi fi else pkg_failed=untried fi if test $pkg_failed = yes; then if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then _pkg_short_errors_supported=yes else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then ATOMIX_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "$ATOMIX_MODULES"` else ATOMIX_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$ATOMIX_MODULES"` fi # Put the nasty error message in config.log where it belongs echo "$ATOMIX_PKG_ERRORS" >&5 { { echo "$as_me:$LINENO: error: Package requirements ($ATOMIX_MODULES) were not met: $ATOMIX_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables ATOMIX_CFLAGS and ATOMIX_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. " >&5 echo "$as_me: error: Package requirements ($ATOMIX_MODULES) were not met: $ATOMIX_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables ATOMIX_CFLAGS and ATOMIX_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. " >&2;} { (exit 1); exit 1; }; } elif test $pkg_failed = untried; then { { echo "$as_me:$LINENO: error: The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables ATOMIX_CFLAGS and ATOMIX_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See \`config.log' for more details." >&5 echo "$as_me: error: The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. Alternatively, you may set the environment variables ATOMIX_CFLAGS and ATOMIX_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } else ATOMIX_CFLAGS=$pkg_cv_ATOMIX_CFLAGS ATOMIX_LIBS=$pkg_cv_ATOMIX_LIBS echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6 : fi GETTEXT_PACKAGE=atomix cat >>confdefs.h <<_ACEOF #define GETTEXT_PACKAGE "$GETTEXT_PACKAGE" _ACEOF ALL_LINGUAS="am az be bg ca cs da de el en_CA en_GB es et fa fi fr ga gl gu he hi hu is it ja kn ko lt lv mk ml ms nb nl no pa pl pt pt_BR ru sk sl sq sr sr@Latn sv ta tr uk vi wa zh_CN zh_HK zh_TW" # On IRIX 5.3, sys/types and inttypes.h are conflicting. for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ inttypes.h stdint.h unistd.h do as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` echo "$as_me:$LINENO: checking for $ac_header" >&5 echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 if eval "test \"\${$as_ac_Header+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default #include <$ac_header> _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then eval "$as_ac_Header=yes" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_Header=no" fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 if test `eval echo '${'$as_ac_Header'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF fi done for ac_header in locale.h do as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` if eval "test \"\${$as_ac_Header+set}\" = set"; then echo "$as_me:$LINENO: checking for $ac_header" >&5 echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 if eval "test \"\${$as_ac_Header+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 else # Is the header compilable? echo "$as_me:$LINENO: checking $ac_header usability" >&5 echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default #include <$ac_header> _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_header_compiler=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_compiler=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 echo "${ECHO_T}$ac_header_compiler" >&6 # Is the header present? echo "$as_me:$LINENO: checking $ac_header presence" >&5 echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include <$ac_header> _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_c_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then ac_header_preproc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_preproc=no fi rm -f conftest.err conftest.$ac_ext echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 echo "${ECHO_T}$ac_header_preproc" >&6 # So? What about this header? case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in yes:no: ) { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} ac_header_preproc=yes ;; no:yes:* ) { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## --------------------------------------------------------------------- ## ## Report this to http://bugzilla.gnome.org/enter_bug.cgi?product=atomix ## ## --------------------------------------------------------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 ;; esac echo "$as_me:$LINENO: checking for $ac_header" >&5 echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 if eval "test \"\${$as_ac_Header+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else eval "$as_ac_Header=\$ac_header_preproc" fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 fi if test `eval echo '${'$as_ac_Header'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF fi done if test $ac_cv_header_locale_h = yes; then echo "$as_me:$LINENO: checking for LC_MESSAGES" >&5 echo $ECHO_N "checking for LC_MESSAGES... $ECHO_C" >&6 if test "${am_cv_val_LC_MESSAGES+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include int main () { return LC_MESSAGES ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then am_cv_val_LC_MESSAGES=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 am_cv_val_LC_MESSAGES=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $am_cv_val_LC_MESSAGES" >&5 echo "${ECHO_T}$am_cv_val_LC_MESSAGES" >&6 if test $am_cv_val_LC_MESSAGES = yes; then cat >>confdefs.h <<\_ACEOF #define HAVE_LC_MESSAGES 1 _ACEOF fi fi USE_NLS=yes gt_cv_have_gettext=no CATOBJEXT=NONE XGETTEXT=: INTLLIBS= if test "${ac_cv_header_libintl_h+set}" = set; then echo "$as_me:$LINENO: checking for libintl.h" >&5 echo $ECHO_N "checking for libintl.h... $ECHO_C" >&6 if test "${ac_cv_header_libintl_h+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 fi echo "$as_me:$LINENO: result: $ac_cv_header_libintl_h" >&5 echo "${ECHO_T}$ac_cv_header_libintl_h" >&6 else # Is the header compilable? echo "$as_me:$LINENO: checking libintl.h usability" >&5 echo $ECHO_N "checking libintl.h usability... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default #include _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_header_compiler=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_compiler=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 echo "${ECHO_T}$ac_header_compiler" >&6 # Is the header present? echo "$as_me:$LINENO: checking libintl.h presence" >&5 echo $ECHO_N "checking libintl.h presence... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_c_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then ac_header_preproc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_preproc=no fi rm -f conftest.err conftest.$ac_ext echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 echo "${ECHO_T}$ac_header_preproc" >&6 # So? What about this header? case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in yes:no: ) { echo "$as_me:$LINENO: WARNING: libintl.h: accepted by the compiler, rejected by the preprocessor!" >&5 echo "$as_me: WARNING: libintl.h: accepted by the compiler, rejected by the preprocessor!" >&2;} { echo "$as_me:$LINENO: WARNING: libintl.h: proceeding with the compiler's result" >&5 echo "$as_me: WARNING: libintl.h: proceeding with the compiler's result" >&2;} ac_header_preproc=yes ;; no:yes:* ) { echo "$as_me:$LINENO: WARNING: libintl.h: present but cannot be compiled" >&5 echo "$as_me: WARNING: libintl.h: present but cannot be compiled" >&2;} { echo "$as_me:$LINENO: WARNING: libintl.h: check for missing prerequisite headers?" >&5 echo "$as_me: WARNING: libintl.h: check for missing prerequisite headers?" >&2;} { echo "$as_me:$LINENO: WARNING: libintl.h: see the Autoconf documentation" >&5 echo "$as_me: WARNING: libintl.h: see the Autoconf documentation" >&2;} { echo "$as_me:$LINENO: WARNING: libintl.h: section \"Present But Cannot Be Compiled\"" >&5 echo "$as_me: WARNING: libintl.h: section \"Present But Cannot Be Compiled\"" >&2;} { echo "$as_me:$LINENO: WARNING: libintl.h: proceeding with the preprocessor's result" >&5 echo "$as_me: WARNING: libintl.h: proceeding with the preprocessor's result" >&2;} { echo "$as_me:$LINENO: WARNING: libintl.h: in the future, the compiler will take precedence" >&5 echo "$as_me: WARNING: libintl.h: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## --------------------------------------------------------------------- ## ## Report this to http://bugzilla.gnome.org/enter_bug.cgi?product=atomix ## ## --------------------------------------------------------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 ;; esac echo "$as_me:$LINENO: checking for libintl.h" >&5 echo $ECHO_N "checking for libintl.h... $ECHO_C" >&6 if test "${ac_cv_header_libintl_h+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_cv_header_libintl_h=$ac_header_preproc fi echo "$as_me:$LINENO: result: $ac_cv_header_libintl_h" >&5 echo "${ECHO_T}$ac_cv_header_libintl_h" >&6 fi if test $ac_cv_header_libintl_h = yes; then gt_cv_func_dgettext_libintl="no" libintl_extra_libs="" # # First check in libc # echo "$as_me:$LINENO: checking for ngettext in libc" >&5 echo $ECHO_N "checking for ngettext in libc... $ECHO_C" >&6 if test "${gt_cv_func_ngettext_libc+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include int main () { return !ngettext ("","", 1) ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then gt_cv_func_ngettext_libc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 gt_cv_func_ngettext_libc=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $gt_cv_func_ngettext_libc" >&5 echo "${ECHO_T}$gt_cv_func_ngettext_libc" >&6 if test "$gt_cv_func_ngettext_libc" = "yes" ; then echo "$as_me:$LINENO: checking for dgettext in libc" >&5 echo $ECHO_N "checking for dgettext in libc... $ECHO_C" >&6 if test "${gt_cv_func_dgettext_libc+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include int main () { return !dgettext ("","") ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then gt_cv_func_dgettext_libc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 gt_cv_func_dgettext_libc=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $gt_cv_func_dgettext_libc" >&5 echo "${ECHO_T}$gt_cv_func_dgettext_libc" >&6 fi if test "$gt_cv_func_ngettext_libc" = "yes" ; then for ac_func in bind_textdomain_codeset do as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` echo "$as_me:$LINENO: checking for $ac_func" >&5 echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 if eval "test \"\${$as_ac_var+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define $ac_func to an innocuous variant, in case declares $ac_func. For example, HP-UX 11i declares gettimeofday. */ #define $ac_func innocuous_$ac_func /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef $ac_func /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" { #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char $ac_func (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ #if defined (__stub_$ac_func) || defined (__stub___$ac_func) choke me #else char (*f) () = $ac_func; #endif #ifdef __cplusplus } #endif int main () { return f != $ac_func; ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then eval "$as_ac_var=yes" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_var=no" fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 if test `eval echo '${'$as_ac_var'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF fi done fi # # If we don't have everything we want, check in libintl # if test "$gt_cv_func_dgettext_libc" != "yes" \ || test "$gt_cv_func_ngettext_libc" != "yes" \ || test "$ac_cv_func_bind_textdomain_codeset" != "yes" ; then echo "$as_me:$LINENO: checking for bindtextdomain in -lintl" >&5 echo $ECHO_N "checking for bindtextdomain in -lintl... $ECHO_C" >&6 if test "${ac_cv_lib_intl_bindtextdomain+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lintl $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char bindtextdomain (); int main () { bindtextdomain (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_intl_bindtextdomain=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_intl_bindtextdomain=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_intl_bindtextdomain" >&5 echo "${ECHO_T}$ac_cv_lib_intl_bindtextdomain" >&6 if test $ac_cv_lib_intl_bindtextdomain = yes; then echo "$as_me:$LINENO: checking for ngettext in -lintl" >&5 echo $ECHO_N "checking for ngettext in -lintl... $ECHO_C" >&6 if test "${ac_cv_lib_intl_ngettext+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lintl $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char ngettext (); int main () { ngettext (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_intl_ngettext=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_intl_ngettext=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_intl_ngettext" >&5 echo "${ECHO_T}$ac_cv_lib_intl_ngettext" >&6 if test $ac_cv_lib_intl_ngettext = yes; then echo "$as_me:$LINENO: checking for dgettext in -lintl" >&5 echo $ECHO_N "checking for dgettext in -lintl... $ECHO_C" >&6 if test "${ac_cv_lib_intl_dgettext+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lintl $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char dgettext (); int main () { dgettext (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_intl_dgettext=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_intl_dgettext=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_intl_dgettext" >&5 echo "${ECHO_T}$ac_cv_lib_intl_dgettext" >&6 if test $ac_cv_lib_intl_dgettext = yes; then gt_cv_func_dgettext_libintl=yes fi fi fi if test "$gt_cv_func_dgettext_libintl" != "yes" ; then echo "$as_me:$LINENO: checking if -liconv is needed to use gettext" >&5 echo $ECHO_N "checking if -liconv is needed to use gettext... $ECHO_C" >&6 echo "$as_me:$LINENO: result: " >&5 echo "${ECHO_T}" >&6 echo "$as_me:$LINENO: checking for ngettext in -lintl" >&5 echo $ECHO_N "checking for ngettext in -lintl... $ECHO_C" >&6 if test "${ac_cv_lib_intl_ngettext+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lintl -liconv $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char ngettext (); int main () { ngettext (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_intl_ngettext=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_intl_ngettext=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_intl_ngettext" >&5 echo "${ECHO_T}$ac_cv_lib_intl_ngettext" >&6 if test $ac_cv_lib_intl_ngettext = yes; then echo "$as_me:$LINENO: checking for dcgettext in -lintl" >&5 echo $ECHO_N "checking for dcgettext in -lintl... $ECHO_C" >&6 if test "${ac_cv_lib_intl_dcgettext+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lintl -liconv $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char dcgettext (); int main () { dcgettext (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_intl_dcgettext=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_intl_dcgettext=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_intl_dcgettext" >&5 echo "${ECHO_T}$ac_cv_lib_intl_dcgettext" >&6 if test $ac_cv_lib_intl_dcgettext = yes; then gt_cv_func_dgettext_libintl=yes libintl_extra_libs=-liconv else : fi else : fi fi # # If we found libintl, then check in it for bind_textdomain_codeset(); # we'll prefer libc if neither have bind_textdomain_codeset(), # and both have dgettext and ngettext # if test "$gt_cv_func_dgettext_libintl" = "yes" ; then glib_save_LIBS="$LIBS" LIBS="$LIBS -lintl $libintl_extra_libs" unset ac_cv_func_bind_textdomain_codeset for ac_func in bind_textdomain_codeset do as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` echo "$as_me:$LINENO: checking for $ac_func" >&5 echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 if eval "test \"\${$as_ac_var+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define $ac_func to an innocuous variant, in case declares $ac_func. For example, HP-UX 11i declares gettimeofday. */ #define $ac_func innocuous_$ac_func /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef $ac_func /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" { #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char $ac_func (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ #if defined (__stub_$ac_func) || defined (__stub___$ac_func) choke me #else char (*f) () = $ac_func; #endif #ifdef __cplusplus } #endif int main () { return f != $ac_func; ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then eval "$as_ac_var=yes" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_var=no" fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 if test `eval echo '${'$as_ac_var'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF fi done LIBS="$glib_save_LIBS" if test "$ac_cv_func_bind_textdomain_codeset" = "yes" ; then gt_cv_func_dgettext_libc=no else if test "$gt_cv_func_dgettext_libc" = "yes" \ && test "$gt_cv_func_ngettext_libc" = "yes"; then gt_cv_func_dgettext_libintl=no fi fi fi fi if test "$gt_cv_func_dgettext_libc" = "yes" \ || test "$gt_cv_func_dgettext_libintl" = "yes"; then gt_cv_have_gettext=yes fi if test "$gt_cv_func_dgettext_libintl" = "yes"; then INTLLIBS="-lintl $libintl_extra_libs" fi if test "$gt_cv_have_gettext" = "yes"; then cat >>confdefs.h <<\_ACEOF #define HAVE_GETTEXT 1 _ACEOF # Extract the first word of "msgfmt", so it can be a program name with args. set dummy msgfmt; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_path_MSGFMT+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else case "$MSGFMT" in /*) ac_cv_path_MSGFMT="$MSGFMT" # Let the user override the test with a path. ;; *) IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" for ac_dir in $PATH; do test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/$ac_word; then if test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"; then ac_cv_path_MSGFMT="$ac_dir/$ac_word" break fi fi done IFS="$ac_save_ifs" test -z "$ac_cv_path_MSGFMT" && ac_cv_path_MSGFMT="no" ;; esac fi MSGFMT="$ac_cv_path_MSGFMT" if test "$MSGFMT" != "no"; then echo "$as_me:$LINENO: result: $MSGFMT" >&5 echo "${ECHO_T}$MSGFMT" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi if test "$MSGFMT" != "no"; then glib_save_LIBS="$LIBS" LIBS="$LIBS $INTLLIBS" for ac_func in dcgettext do as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` echo "$as_me:$LINENO: checking for $ac_func" >&5 echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 if eval "test \"\${$as_ac_var+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define $ac_func to an innocuous variant, in case declares $ac_func. For example, HP-UX 11i declares gettimeofday. */ #define $ac_func innocuous_$ac_func /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef $ac_func /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" { #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char $ac_func (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ #if defined (__stub_$ac_func) || defined (__stub___$ac_func) choke me #else char (*f) () = $ac_func; #endif #ifdef __cplusplus } #endif int main () { return f != $ac_func; ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then eval "$as_ac_var=yes" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_var=no" fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 if test `eval echo '${'$as_ac_var'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF fi done # Extract the first word of "gmsgfmt", so it can be a program name with args. set dummy gmsgfmt; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_path_GMSGFMT+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else case $GMSGFMT in [\\/]* | ?:[\\/]*) ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_GMSGFMT="$as_dir/$ac_word$ac_exec_ext" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT" ;; esac fi GMSGFMT=$ac_cv_path_GMSGFMT if test -n "$GMSGFMT"; then echo "$as_me:$LINENO: result: $GMSGFMT" >&5 echo "${ECHO_T}$GMSGFMT" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi # Extract the first word of "xgettext", so it can be a program name with args. set dummy xgettext; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_path_XGETTEXT+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else case "$XGETTEXT" in /*) ac_cv_path_XGETTEXT="$XGETTEXT" # Let the user override the test with a path. ;; *) IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" for ac_dir in $PATH; do test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/$ac_word; then if test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"; then ac_cv_path_XGETTEXT="$ac_dir/$ac_word" break fi fi done IFS="$ac_save_ifs" test -z "$ac_cv_path_XGETTEXT" && ac_cv_path_XGETTEXT=":" ;; esac fi XGETTEXT="$ac_cv_path_XGETTEXT" if test "$XGETTEXT" != ":"; then echo "$as_me:$LINENO: result: $XGETTEXT" >&5 echo "${ECHO_T}$XGETTEXT" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { extern int _nl_msg_cat_cntr; return _nl_msg_cat_cntr ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then CATOBJEXT=.gmo DATADIRNAME=share else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 case $host in *-*-solaris*) echo "$as_me:$LINENO: checking for bind_textdomain_codeset" >&5 echo $ECHO_N "checking for bind_textdomain_codeset... $ECHO_C" >&6 if test "${ac_cv_func_bind_textdomain_codeset+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define bind_textdomain_codeset to an innocuous variant, in case declares bind_textdomain_codeset. For example, HP-UX 11i declares gettimeofday. */ #define bind_textdomain_codeset innocuous_bind_textdomain_codeset /* System header to define __stub macros and hopefully few prototypes, which can conflict with char bind_textdomain_codeset (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef bind_textdomain_codeset /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" { #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char bind_textdomain_codeset (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ #if defined (__stub_bind_textdomain_codeset) || defined (__stub___bind_textdomain_codeset) choke me #else char (*f) () = bind_textdomain_codeset; #endif #ifdef __cplusplus } #endif int main () { return f != bind_textdomain_codeset; ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_func_bind_textdomain_codeset=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_func_bind_textdomain_codeset=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_func_bind_textdomain_codeset" >&5 echo "${ECHO_T}$ac_cv_func_bind_textdomain_codeset" >&6 if test $ac_cv_func_bind_textdomain_codeset = yes; then CATOBJEXT=.gmo DATADIRNAME=share else CATOBJEXT=.mo DATADIRNAME=lib fi ;; *) CATOBJEXT=.mo DATADIRNAME=lib ;; esac fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS="$glib_save_LIBS" INSTOBJEXT=.mo else gt_cv_have_gettext=no fi fi fi if test "$gt_cv_have_gettext" = "yes" ; then cat >>confdefs.h <<\_ACEOF #define ENABLE_NLS 1 _ACEOF fi if test "$XGETTEXT" != ":"; then if $XGETTEXT --omit-header /dev/null 2> /dev/null; then : ; else echo "$as_me:$LINENO: result: found xgettext program is not GNU xgettext; ignore it" >&5 echo "${ECHO_T}found xgettext program is not GNU xgettext; ignore it" >&6 XGETTEXT=":" fi fi # We need to process the po/ directory. POSUB=po ac_config_commands="$ac_config_commands default-1" for lang in $ALL_LINGUAS; do GMOFILES="$GMOFILES $lang.gmo" POFILES="$POFILES $lang.po" done if test "$gt_cv_have_gettext" = "yes"; then if test "x$ALL_LINGUAS" = "x"; then LINGUAS= else echo "$as_me:$LINENO: checking for catalogs to be installed" >&5 echo $ECHO_N "checking for catalogs to be installed... $ECHO_C" >&6 NEW_LINGUAS= for presentlang in $ALL_LINGUAS; do useit=no if test "%UNSET%" != "${LINGUAS-%UNSET%}"; then desiredlanguages="$LINGUAS" else desiredlanguages="$ALL_LINGUAS" fi for desiredlang in $desiredlanguages; do # Use the presentlang catalog if desiredlang is # a. equal to presentlang, or # b. a variant of presentlang (because in this case, # presentlang can be used as a fallback for messages # which are not translated in the desiredlang catalog). case "$desiredlang" in "$presentlang"*) useit=yes;; esac done if test $useit = yes; then NEW_LINGUAS="$NEW_LINGUAS $presentlang" fi done LINGUAS=$NEW_LINGUAS echo "$as_me:$LINENO: result: $LINGUAS" >&5 echo "${ECHO_T}$LINGUAS" >&6 fi if test -n "$LINGUAS"; then for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done fi fi MKINSTALLDIRS= if test -n "$ac_aux_dir"; then MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs" fi if test -z "$MKINSTALLDIRS"; then MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs" fi test -d po || mkdir po if test "x$srcdir" != "x."; then if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then posrcprefix="$srcdir/" else posrcprefix="../$srcdir/" fi else posrcprefix="../" fi rm -f po/POTFILES sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \ < $srcdir/po/POTFILES.in > po/POTFILES EXTRA_WARNING_CFLAGS=" $warning_flags" ac_config_files="$ac_config_files Makefile po/Makefile.in src/Makefile themes/Makefile themes/default/Makefile level/Makefile" cat >confcache <<\_ACEOF # This file is a shell script that caches the results of configure # tests run on this system so they can be shared between configure # scripts and configure runs, see configure's option --config-cache. # It is not useful on other systems. If it contains results you don't # want to keep, you may remove or edit it. # # config.status only pays attention to the cache file if you give it # the --recheck option to rerun configure. # # `ac_cv_env_foo' variables (set or unset) will be overridden when # loading this file, other *unset* `ac_cv_foo' will be assigned the # following values. _ACEOF # The following way of writing the cache mishandles newlines in values, # but we know of no workaround that is simple, portable, and efficient. # So, don't put newlines in cache variables' values. # Ultrix sh set writes to stderr and can't be redirected directly, # and sets the high bit in the cache file unless we assign to the vars. { (set) 2>&1 | case `(ac_space=' '; set | grep ac_space) 2>&1` in *ac_space=\ *) # `set' does not quote correctly, so add quotes (double-quote # substitution turns \\\\ into \\, and sed turns \\ into \). sed -n \ "s/'/'\\\\''/g; s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" ;; *) # `set' quotes correctly as required by POSIX, so do not add quotes. sed -n \ "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" ;; esac; } | sed ' t clear : clear s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ t end /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ : end' >>confcache if diff $cache_file confcache >/dev/null 2>&1; then :; else if test -w $cache_file; then test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file" cat confcache >$cache_file else echo "not updating unwritable cache $cache_file" fi fi rm -f confcache test "x$prefix" = xNONE && prefix=$ac_default_prefix # Let make expand exec_prefix. test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' # VPATH may cause trouble with some makes, so we remove $(srcdir), # ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and # trailing colons and then remove the whole line if VPATH becomes empty # (actually we leave an empty line to preserve line numbers). if test "x$srcdir" = x.; then ac_vpsub='/^[ ]*VPATH[ ]*=/{ s/:*\$(srcdir):*/:/; s/:*\${srcdir}:*/:/; s/:*@srcdir@:*/:/; s/^\([^=]*=[ ]*\):*/\1/; s/:*$//; s/^[^=]*=[ ]*$//; }' fi DEFS=-DHAVE_CONFIG_H ac_libobjs= ac_ltlibobjs= for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue # 1. Remove the extension, and $U if already installed. ac_i=`echo "$ac_i" | sed 's/\$U\././;s/\.o$//;s/\.obj$//'` # 2. Add them. ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext" ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo' done LIBOBJS=$ac_libobjs LTLIBOBJS=$ac_ltlibobjs ac_config_commands="$ac_config_commands po/stamp-it" if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then { { echo "$as_me:$LINENO: error: conditional \"AMDEP\" was never defined. Usually this means the macro was only invoked conditionally." >&5 echo "$as_me: error: conditional \"AMDEP\" was never defined. Usually this means the macro was only invoked conditionally." >&2;} { (exit 1); exit 1; }; } fi if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then { { echo "$as_me:$LINENO: error: conditional \"am__fastdepCC\" was never defined. Usually this means the macro was only invoked conditionally." >&5 echo "$as_me: error: conditional \"am__fastdepCC\" was never defined. Usually this means the macro was only invoked conditionally." >&2;} { (exit 1); exit 1; }; } fi if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then { { echo "$as_me:$LINENO: error: conditional \"am__fastdepCC\" was never defined. Usually this means the macro was only invoked conditionally." >&5 echo "$as_me: error: conditional \"am__fastdepCC\" was never defined. Usually this means the macro was only invoked conditionally." >&2;} { (exit 1); exit 1; }; } fi if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then { { echo "$as_me:$LINENO: error: conditional \"am__fastdepCC\" was never defined. Usually this means the macro was only invoked conditionally." >&5 echo "$as_me: error: conditional \"am__fastdepCC\" was never defined. Usually this means the macro was only invoked conditionally." >&2;} { (exit 1); exit 1; }; } fi : ${CONFIG_STATUS=./config.status} ac_clean_files_save=$ac_clean_files ac_clean_files="$ac_clean_files $CONFIG_STATUS" { echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5 echo "$as_me: creating $CONFIG_STATUS" >&6;} cat >$CONFIG_STATUS <<_ACEOF #! $SHELL # Generated by $as_me. # Run this file to recreate the current configuration. # Compiler output produced by configure, useful for debugging # configure, is in config.log if it exists. debug=false ac_cs_recheck=false ac_cs_silent=false SHELL=\${CONFIG_SHELL-$SHELL} _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF ## --------------------- ## ## M4sh Initialization. ## ## --------------------- ## # Be Bourne compatible if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then emulate sh NULLCMD=: # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then set -o posix fi DUALCASE=1; export DUALCASE # for MKS sh # Support unset when possible. if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then as_unset=unset else as_unset=false fi # Work around bugs in pre-3.0 UWIN ksh. $as_unset ENV MAIL MAILPATH PS1='$ ' PS2='> ' PS4='+ ' # NLS nuisances. for as_var in \ LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ LC_TELEPHONE LC_TIME do if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then eval $as_var=C; export $as_var else $as_unset $as_var fi done # Required to use basename. if expr a : '\(a\)' >/dev/null 2>&1; then as_expr=expr else as_expr=false fi if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then as_basename=basename else as_basename=false fi # Name of the executable. as_me=`$as_basename "$0" || $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ X"$0" : 'X\(/\)$' \| \ . : '\(.\)' 2>/dev/null || echo X/"$0" | sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } /^X\/\(\/\/\)$/{ s//\1/; q; } /^X\/\(\/\).*/{ s//\1/; q; } s/.*/./; q'` # PATH needs CR, and LINENO needs CR and PATH. # Avoid depending upon Character Ranges. as_cr_letters='abcdefghijklmnopqrstuvwxyz' as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' as_cr_Letters=$as_cr_letters$as_cr_LETTERS as_cr_digits='0123456789' as_cr_alnum=$as_cr_Letters$as_cr_digits # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then echo "#! /bin/sh" >conf$$.sh echo "exit 0" >>conf$$.sh chmod +x conf$$.sh if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then PATH_SEPARATOR=';' else PATH_SEPARATOR=: fi rm -f conf$$.sh fi as_lineno_1=$LINENO as_lineno_2=$LINENO as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` test "x$as_lineno_1" != "x$as_lineno_2" && test "x$as_lineno_3" = "x$as_lineno_2" || { # Find who we are. Look in the path if we contain no path at all # relative or not. case $0 in *[\\/]* ) as_myself=$0 ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break done ;; esac # We did not find ourselves, most probably we were run as `sh COMMAND' # in which case we are not to be found in the path. if test "x$as_myself" = x; then as_myself=$0 fi if test ! -f "$as_myself"; then { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5 echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;} { (exit 1); exit 1; }; } fi case $CONFIG_SHELL in '') as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for as_base in sh bash ksh sh5; do case $as_dir in /*) if ("$as_dir/$as_base" -c ' as_lineno_1=$LINENO as_lineno_2=$LINENO as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` test "x$as_lineno_1" != "x$as_lineno_2" && test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } CONFIG_SHELL=$as_dir/$as_base export CONFIG_SHELL exec "$CONFIG_SHELL" "$0" ${1+"$@"} fi;; esac done done ;; esac # Create $as_me.lineno as a copy of $as_myself, but with $LINENO # uniformly replaced by the line number. The first 'sed' inserts a # line-number line before each line; the second 'sed' does the real # work. The second script uses 'N' to pair each line-number line # with the numbered line, and appends trailing '-' during # substitution so that $LINENO is not a special case at line end. # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) sed '=' <$as_myself | sed ' N s,$,-, : loop s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, t loop s,-$,, s,^['$as_cr_digits']*\n,, ' >$as_me.lineno && chmod +x $as_me.lineno || { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5 echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;} { (exit 1); exit 1; }; } # Don't try to exec as it changes $[0], causing all sort of problems # (the dirname of $[0] is not the place where we might find the # original and so on. Autoconf is especially sensible to this). . ./$as_me.lineno # Exit status is that of the last command. exit } case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in *c*,-n*) ECHO_N= ECHO_C=' ' ECHO_T=' ' ;; *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; *) ECHO_N= ECHO_C='\c' ECHO_T= ;; esac if expr a : '\(a\)' >/dev/null 2>&1; then as_expr=expr else as_expr=false fi rm -f conf$$ conf$$.exe conf$$.file echo >conf$$.file if ln -s conf$$.file conf$$ 2>/dev/null; then # We could just check for DJGPP; but this test a) works b) is more generic # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). if test -f conf$$.exe; then # Don't use ln at all; we don't have any links as_ln_s='cp -p' else as_ln_s='ln -s' fi elif ln conf$$.file conf$$ 2>/dev/null; then as_ln_s=ln else as_ln_s='cp -p' fi rm -f conf$$ conf$$.exe conf$$.file if mkdir -p . 2>/dev/null; then as_mkdir_p=: else test -d ./-p && rmdir ./-p as_mkdir_p=false fi as_executable_p="test -f" # Sed expression to map a string onto a valid CPP name. as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" # Sed expression to map a string onto a valid variable name. as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" # IFS # We need space, tab and new line, in precisely that order. as_nl=' ' IFS=" $as_nl" # CDPATH. $as_unset CDPATH exec 6>&1 # Open the log real soon, to keep \$[0] and so on meaningful, and to # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. Logging --version etc. is OK. exec 5>>config.log { echo sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX ## Running $as_me. ## _ASBOX } >&5 cat >&5 <<_CSEOF This file was extended by atomix $as_me 2.14.0, which was generated by GNU Autoconf 2.59. Invocation command line was CONFIG_FILES = $CONFIG_FILES CONFIG_HEADERS = $CONFIG_HEADERS CONFIG_LINKS = $CONFIG_LINKS CONFIG_COMMANDS = $CONFIG_COMMANDS $ $0 $@ _CSEOF echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5 echo >&5 _ACEOF # Files that config.status was made for. if test -n "$ac_config_files"; then echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS fi if test -n "$ac_config_headers"; then echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS fi if test -n "$ac_config_links"; then echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS fi if test -n "$ac_config_commands"; then echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS fi cat >>$CONFIG_STATUS <<\_ACEOF ac_cs_usage="\ \`$as_me' instantiates files from templates according to the current configuration. Usage: $0 [OPTIONS] [FILE]... -h, --help print this help, then exit -V, --version print version number, then exit -q, --quiet do not print progress messages -d, --debug don't remove temporary files --recheck update $as_me by reconfiguring in the same conditions --file=FILE[:TEMPLATE] instantiate the configuration file FILE --header=FILE[:TEMPLATE] instantiate the configuration header FILE Configuration files: $config_files Configuration headers: $config_headers Configuration commands: $config_commands Report bugs to ." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF ac_cs_version="\\ atomix config.status 2.14.0 configured by $0, generated by GNU Autoconf 2.59, with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\" Copyright (C) 2003 Free Software Foundation, Inc. This config.status script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it." srcdir=$srcdir INSTALL="$INSTALL" _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF # If no file are specified by the user, then we need to provide default # value. By we need to know if files were specified by the user. ac_need_defaults=: while test $# != 0 do case $1 in --*=*) ac_option=`expr "x$1" : 'x\([^=]*\)='` ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'` ac_shift=: ;; -*) ac_option=$1 ac_optarg=$2 ac_shift=shift ;; *) # This is not an option, so the user has probably given explicit # arguments. ac_option=$1 ac_need_defaults=false;; esac case $ac_option in # Handling of the options. _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) ac_cs_recheck=: ;; --version | --vers* | -V ) echo "$ac_cs_version"; exit 0 ;; --he | --h) # Conflict between --help and --header { { echo "$as_me:$LINENO: error: ambiguous option: $1 Try \`$0 --help' for more information." >&5 echo "$as_me: error: ambiguous option: $1 Try \`$0 --help' for more information." >&2;} { (exit 1); exit 1; }; };; --help | --hel | -h ) echo "$ac_cs_usage"; exit 0 ;; --debug | --d* | -d ) debug=: ;; --file | --fil | --fi | --f ) $ac_shift CONFIG_FILES="$CONFIG_FILES $ac_optarg" ac_need_defaults=false;; --header | --heade | --head | --hea ) $ac_shift CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" ac_need_defaults=false;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil | --si | --s) ac_cs_silent=: ;; # This is an error. -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1 Try \`$0 --help' for more information." >&5 echo "$as_me: error: unrecognized option: $1 Try \`$0 --help' for more information." >&2;} { (exit 1); exit 1; }; } ;; *) ac_config_targets="$ac_config_targets $1" ;; esac shift done ac_configure_extra_args= if $ac_cs_silent; then exec 6>/dev/null ac_configure_extra_args="$ac_configure_extra_args --silent" fi _ACEOF cat >>$CONFIG_STATUS <<_ACEOF if \$ac_cs_recheck; then echo "running $SHELL $0 " $ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6 exec $SHELL $0 $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion fi _ACEOF cat >>$CONFIG_STATUS <<_ACEOF # # INIT-COMMANDS section. # INTLTOOL_PERL='${INTLTOOL_PERL}' ac_aux_dir='${ac_aux_dir}' prefix="$prefix" exec_prefix="$exec_prefix" INTLTOOL_LIBDIR="$libdir" INTLTOOL_EXTRACT='${INTLTOOL_EXTRACT}' INTLTOOL_ICONV='${INTLTOOL_ICONV}' INTLTOOL_MSGFMT='${INTLTOOL_MSGFMT}' INTLTOOL_MSGMERGE='${INTLTOOL_MSGMERGE}' INTLTOOL_XGETTEXT='${INTLTOOL_XGETTEXT}' AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir" _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF for ac_config_target in $ac_config_targets do case "$ac_config_target" in # Handling of arguments. "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;; "po/Makefile.in" ) CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;; "src/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/Makefile" ;; "themes/Makefile" ) CONFIG_FILES="$CONFIG_FILES themes/Makefile" ;; "themes/default/Makefile" ) CONFIG_FILES="$CONFIG_FILES themes/default/Makefile" ;; "level/Makefile" ) CONFIG_FILES="$CONFIG_FILES level/Makefile" ;; "intltool" ) CONFIG_COMMANDS="$CONFIG_COMMANDS intltool" ;; "depfiles" ) CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; "default-1" ) CONFIG_COMMANDS="$CONFIG_COMMANDS default-1" ;; "po/stamp-it" ) CONFIG_COMMANDS="$CONFIG_COMMANDS po/stamp-it" ;; "config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 echo "$as_me: error: invalid argument: $ac_config_target" >&2;} { (exit 1); exit 1; }; };; esac done # If the user did not use the arguments to specify the items to instantiate, # then the envvar interface is used. Set only those that are not. # We use the long form for the default assignment because of an extremely # bizarre bug on SunOS 4.1.3. if $ac_need_defaults; then test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands fi # Have a temporary directory for convenience. Make it in the build tree # simply because there is no reason to put it here, and in addition, # creating and moving files from /tmp can sometimes cause problems. # Create a temporary directory, and hook for its removal unless debugging. $debug || { trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 trap '{ (exit 1); exit 1; }' 1 2 13 15 } # Create a (secure) tmp directory for tmp files. { tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" } || { tmp=./confstat$$-$RANDOM (umask 077 && mkdir $tmp) } || { echo "$me: cannot create a temporary directory in ." >&2 { (exit 1); exit 1; } } _ACEOF cat >>$CONFIG_STATUS <<_ACEOF # # CONFIG_FILES section. # # No need to generate the scripts if there are no CONFIG_FILES. # This happens for instance when ./config.status config.h if test -n "\$CONFIG_FILES"; then # Protect against being on the right side of a sed subst in config.status. sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g; s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF s,@SHELL@,$SHELL,;t t s,@PATH_SEPARATOR@,$PATH_SEPARATOR,;t t s,@PACKAGE_NAME@,$PACKAGE_NAME,;t t s,@PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t s,@PACKAGE_VERSION@,$PACKAGE_VERSION,;t t s,@PACKAGE_STRING@,$PACKAGE_STRING,;t t s,@PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t s,@exec_prefix@,$exec_prefix,;t t s,@prefix@,$prefix,;t t s,@program_transform_name@,$program_transform_name,;t t s,@bindir@,$bindir,;t t s,@sbindir@,$sbindir,;t t s,@libexecdir@,$libexecdir,;t t s,@datadir@,$datadir,;t t s,@sysconfdir@,$sysconfdir,;t t s,@sharedstatedir@,$sharedstatedir,;t t s,@localstatedir@,$localstatedir,;t t s,@libdir@,$libdir,;t t s,@includedir@,$includedir,;t t s,@oldincludedir@,$oldincludedir,;t t s,@infodir@,$infodir,;t t s,@mandir@,$mandir,;t t s,@build_alias@,$build_alias,;t t s,@host_alias@,$host_alias,;t t s,@target_alias@,$target_alias,;t t s,@DEFS@,$DEFS,;t t s,@ECHO_C@,$ECHO_C,;t t s,@ECHO_N@,$ECHO_N,;t t s,@ECHO_T@,$ECHO_T,;t t s,@LIBS@,$LIBS,;t t s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t s,@INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t s,@INSTALL_DATA@,$INSTALL_DATA,;t t s,@CYGPATH_W@,$CYGPATH_W,;t t s,@PACKAGE@,$PACKAGE,;t t s,@VERSION@,$VERSION,;t t s,@ACLOCAL@,$ACLOCAL,;t t s,@AUTOCONF@,$AUTOCONF,;t t s,@AUTOMAKE@,$AUTOMAKE,;t t s,@AUTOHEADER@,$AUTOHEADER,;t t s,@MAKEINFO@,$MAKEINFO,;t t s,@install_sh@,$install_sh,;t t s,@STRIP@,$STRIP,;t t s,@ac_ct_STRIP@,$ac_ct_STRIP,;t t s,@INSTALL_STRIP_PROGRAM@,$INSTALL_STRIP_PROGRAM,;t t s,@mkdir_p@,$mkdir_p,;t t s,@AWK@,$AWK,;t t s,@SET_MAKE@,$SET_MAKE,;t t s,@am__leading_dot@,$am__leading_dot,;t t s,@AMTAR@,$AMTAR,;t t s,@am__tar@,$am__tar,;t t s,@am__untar@,$am__untar,;t t s,@INTLTOOL_DESKTOP_RULE@,$INTLTOOL_DESKTOP_RULE,;t t s,@INTLTOOL_DIRECTORY_RULE@,$INTLTOOL_DIRECTORY_RULE,;t t s,@INTLTOOL_KEYS_RULE@,$INTLTOOL_KEYS_RULE,;t t s,@INTLTOOL_PROP_RULE@,$INTLTOOL_PROP_RULE,;t t s,@INTLTOOL_OAF_RULE@,$INTLTOOL_OAF_RULE,;t t s,@INTLTOOL_PONG_RULE@,$INTLTOOL_PONG_RULE,;t t s,@INTLTOOL_SERVER_RULE@,$INTLTOOL_SERVER_RULE,;t t s,@INTLTOOL_SHEET_RULE@,$INTLTOOL_SHEET_RULE,;t t s,@INTLTOOL_SOUNDLIST_RULE@,$INTLTOOL_SOUNDLIST_RULE,;t t s,@INTLTOOL_UI_RULE@,$INTLTOOL_UI_RULE,;t t s,@INTLTOOL_XAM_RULE@,$INTLTOOL_XAM_RULE,;t t s,@INTLTOOL_KBD_RULE@,$INTLTOOL_KBD_RULE,;t t s,@INTLTOOL_XML_RULE@,$INTLTOOL_XML_RULE,;t t s,@INTLTOOL_XML_NOMERGE_RULE@,$INTLTOOL_XML_NOMERGE_RULE,;t t s,@INTLTOOL_CAVES_RULE@,$INTLTOOL_CAVES_RULE,;t t s,@INTLTOOL_SCHEMAS_RULE@,$INTLTOOL_SCHEMAS_RULE,;t t s,@INTLTOOL_THEME_RULE@,$INTLTOOL_THEME_RULE,;t t s,@INTLTOOL_SERVICE_RULE@,$INTLTOOL_SERVICE_RULE,;t t s,@INTLTOOL_EXTRACT@,$INTLTOOL_EXTRACT,;t t s,@INTLTOOL_MERGE@,$INTLTOOL_MERGE,;t t s,@INTLTOOL_UPDATE@,$INTLTOOL_UPDATE,;t t s,@INTLTOOL_PERL@,$INTLTOOL_PERL,;t t s,@INTLTOOL_ICONV@,$INTLTOOL_ICONV,;t t s,@INTLTOOL_MSGFMT@,$INTLTOOL_MSGFMT,;t t s,@INTLTOOL_MSGMERGE@,$INTLTOOL_MSGMERGE,;t t s,@INTLTOOL_XGETTEXT@,$INTLTOOL_XGETTEXT,;t t s,@CC@,$CC,;t t s,@CFLAGS@,$CFLAGS,;t t s,@LDFLAGS@,$LDFLAGS,;t t s,@CPPFLAGS@,$CPPFLAGS,;t t s,@ac_ct_CC@,$ac_ct_CC,;t t s,@EXEEXT@,$EXEEXT,;t t s,@OBJEXT@,$OBJEXT,;t t s,@DEPDIR@,$DEPDIR,;t t s,@am__include@,$am__include,;t t s,@am__quote@,$am__quote,;t t s,@AMDEP_TRUE@,$AMDEP_TRUE,;t t s,@AMDEP_FALSE@,$AMDEP_FALSE,;t t s,@AMDEPBACKSLASH@,$AMDEPBACKSLASH,;t t s,@CCDEPMODE@,$CCDEPMODE,;t t s,@am__fastdepCC_TRUE@,$am__fastdepCC_TRUE,;t t s,@am__fastdepCC_FALSE@,$am__fastdepCC_FALSE,;t t s,@CPP@,$CPP,;t t s,@EGREP@,$EGREP,;t t s,@RANLIB@,$RANLIB,;t t s,@ac_ct_RANLIB@,$ac_ct_RANLIB,;t t s,@WARN_CFLAGS@,$WARN_CFLAGS,;t t s,@PKG_CONFIG@,$PKG_CONFIG,;t t s,@ac_pt_PKG_CONFIG@,$ac_pt_PKG_CONFIG,;t t s,@ATOMIX_CFLAGS@,$ATOMIX_CFLAGS,;t t s,@ATOMIX_LIBS@,$ATOMIX_LIBS,;t t s,@GETTEXT_PACKAGE@,$GETTEXT_PACKAGE,;t t s,@USE_NLS@,$USE_NLS,;t t s,@MSGFMT@,$MSGFMT,;t t s,@GMSGFMT@,$GMSGFMT,;t t s,@XGETTEXT@,$XGETTEXT,;t t s,@CATALOGS@,$CATALOGS,;t t s,@CATOBJEXT@,$CATOBJEXT,;t t s,@DATADIRNAME@,$DATADIRNAME,;t t s,@GMOFILES@,$GMOFILES,;t t s,@INSTOBJEXT@,$INSTOBJEXT,;t t s,@INTLLIBS@,$INTLLIBS,;t t s,@PO_IN_DATADIR_TRUE@,$PO_IN_DATADIR_TRUE,;t t s,@PO_IN_DATADIR_FALSE@,$PO_IN_DATADIR_FALSE,;t t s,@POFILES@,$POFILES,;t t s,@POSUB@,$POSUB,;t t s,@MKINSTALLDIRS@,$MKINSTALLDIRS,;t t s,@EXTRA_WARNING_CFLAGS@,$EXTRA_WARNING_CFLAGS,;t t s,@LIBOBJS@,$LIBOBJS,;t t s,@LTLIBOBJS@,$LTLIBOBJS,;t t CEOF _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF # Split the substitutions into bite-sized pieces for seds with # small command number limits, like on Digital OSF/1 and HP-UX. ac_max_sed_lines=48 ac_sed_frag=1 # Number of current file. ac_beg=1 # First line for current file. ac_end=$ac_max_sed_lines # Line after last line for current file. ac_more_lines=: ac_sed_cmds= while $ac_more_lines; do if test $ac_beg -gt 1; then sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag else sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag fi if test ! -s $tmp/subs.frag; then ac_more_lines=false else # The purpose of the label and of the branching condition is to # speed up the sed processing (if there are no `@' at all, there # is no need to browse any of the substitutions). # These are the two extra sed commands mentioned above. (echo ':t /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed if test -z "$ac_sed_cmds"; then ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed" else ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed" fi ac_sed_frag=`expr $ac_sed_frag + 1` ac_beg=$ac_end ac_end=`expr $ac_end + $ac_max_sed_lines` fi done if test -z "$ac_sed_cmds"; then ac_sed_cmds=cat fi fi # test -n "$CONFIG_FILES" _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". case $ac_file in - | *:- | *:-:* ) # input from stdin cat >$tmp/stdin ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; * ) ac_file_in=$ac_file.in ;; esac # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories. ac_dir=`(dirname "$ac_file") 2>/dev/null || $as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$ac_file" : 'X\(//\)[^/]' \| \ X"$ac_file" : 'X\(//\)$' \| \ X"$ac_file" : 'X\(/\)' \| \ . : '\(.\)' 2>/dev/null || echo X"$ac_file" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } /^X\(\/\/\)[^/].*/{ s//\1/; q; } /^X\(\/\/\)$/{ s//\1/; q; } /^X\(\/\).*/{ s//\1/; q; } s/.*/./; q'` { if $as_mkdir_p; then mkdir -p "$ac_dir" else as_dir="$ac_dir" as_dirs= while test ! -d "$as_dir"; do as_dirs="$as_dir $as_dirs" as_dir=`(dirname "$as_dir") 2>/dev/null || $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$as_dir" : 'X\(//\)[^/]' \| \ X"$as_dir" : 'X\(//\)$' \| \ X"$as_dir" : 'X\(/\)' \| \ . : '\(.\)' 2>/dev/null || echo X"$as_dir" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } /^X\(\/\/\)[^/].*/{ s//\1/; q; } /^X\(\/\/\)$/{ s//\1/; q; } /^X\(\/\).*/{ s//\1/; q; } s/.*/./; q'` done test ! -n "$as_dirs" || mkdir $as_dirs fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} { (exit 1); exit 1; }; }; } ac_builddir=. if test "$ac_dir" != .; then ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` # A "../" for each directory in $ac_dir_suffix. ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` else ac_dir_suffix= ac_top_builddir= fi case $srcdir in .) # No --srcdir option. We are building in place. ac_srcdir=. if test -z "$ac_top_builddir"; then ac_top_srcdir=. else ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` fi ;; [\\/]* | ?:[\\/]* ) # Absolute path. ac_srcdir=$srcdir$ac_dir_suffix; ac_top_srcdir=$srcdir ;; *) # Relative path. ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix ac_top_srcdir=$ac_top_builddir$srcdir ;; esac # Do not use `cd foo && pwd` to compute absolute paths, because # the directories may not exist. case `pwd` in .) ac_abs_builddir="$ac_dir";; *) case "$ac_dir" in .) ac_abs_builddir=`pwd`;; [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; *) ac_abs_builddir=`pwd`/"$ac_dir";; esac;; esac case $ac_abs_builddir in .) ac_abs_top_builddir=${ac_top_builddir}.;; *) case ${ac_top_builddir}. in .) ac_abs_top_builddir=$ac_abs_builddir;; [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; esac;; esac case $ac_abs_builddir in .) ac_abs_srcdir=$ac_srcdir;; *) case $ac_srcdir in .) ac_abs_srcdir=$ac_abs_builddir;; [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; esac;; esac case $ac_abs_builddir in .) ac_abs_top_srcdir=$ac_top_srcdir;; *) case $ac_top_srcdir in .) ac_abs_top_srcdir=$ac_abs_builddir;; [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; esac;; esac case $INSTALL in [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; *) ac_INSTALL=$ac_top_builddir$INSTALL ;; esac # Let's still pretend it is `configure' which instantiates (i.e., don't # use $as_me), people would be surprised to read: # /* config.h. Generated by config.status. */ if test x"$ac_file" = x-; then configure_input= else configure_input="$ac_file. " fi configure_input=$configure_input"Generated from `echo $ac_file_in | sed 's,.*/,,'` by configure." # First look for the input files in the build tree, otherwise in the # src tree. ac_file_inputs=`IFS=: for f in $ac_file_in; do case $f in -) echo $tmp/stdin ;; [\\/$]*) # Absolute (can't be DOS-style, as IFS=:) test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 echo "$as_me: error: cannot find input file: $f" >&2;} { (exit 1); exit 1; }; } echo "$f";; *) # Relative if test -f "$f"; then # Build tree echo "$f" elif test -f "$srcdir/$f"; then # Source tree echo "$srcdir/$f" else # /dev/null tree { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 echo "$as_me: error: cannot find input file: $f" >&2;} { (exit 1); exit 1; }; } fi;; esac done` || { (exit 1); exit 1; } if test x"$ac_file" != x-; then { echo "$as_me:$LINENO: creating $ac_file" >&5 echo "$as_me: creating $ac_file" >&6;} rm -f "$ac_file" fi _ACEOF cat >>$CONFIG_STATUS <<_ACEOF sed "$ac_vpsub $extrasub _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF :t /@[a-zA-Z_][a-zA-Z_0-9]*@/!b s,@configure_input@,$configure_input,;t t s,@srcdir@,$ac_srcdir,;t t s,@abs_srcdir@,$ac_abs_srcdir,;t t s,@top_srcdir@,$ac_top_srcdir,;t t s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t s,@builddir@,$ac_builddir,;t t s,@abs_builddir@,$ac_abs_builddir,;t t s,@top_builddir@,$ac_top_builddir,;t t s,@abs_top_builddir@,$ac_abs_top_builddir,;t t s,@INSTALL@,$ac_INSTALL,;t t " $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out rm -f $tmp/stdin if test x"$ac_file" != x-; then mv $tmp/out $ac_file else cat $tmp/out rm -f $tmp/out fi done _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF # # CONFIG_HEADER section. # # These sed commands are passed to sed as "A NAME B NAME C VALUE D", where # NAME is the cpp macro being defined and VALUE is the value it is being given. # # ac_d sets the value in "#define NAME VALUE" lines. ac_dA='s,^\([ ]*\)#\([ ]*define[ ][ ]*\)' ac_dB='[ ].*$,\1#\2' ac_dC=' ' ac_dD=',;t' # ac_u turns "#undef NAME" without trailing blanks into "#define NAME VALUE". ac_uA='s,^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)' ac_uB='$,\1#\2define\3' ac_uC=' ' ac_uD=',;t' for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". case $ac_file in - | *:- | *:-:* ) # input from stdin cat >$tmp/stdin ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; * ) ac_file_in=$ac_file.in ;; esac test x"$ac_file" != x- && { echo "$as_me:$LINENO: creating $ac_file" >&5 echo "$as_me: creating $ac_file" >&6;} # First look for the input files in the build tree, otherwise in the # src tree. ac_file_inputs=`IFS=: for f in $ac_file_in; do case $f in -) echo $tmp/stdin ;; [\\/$]*) # Absolute (can't be DOS-style, as IFS=:) test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 echo "$as_me: error: cannot find input file: $f" >&2;} { (exit 1); exit 1; }; } # Do quote $f, to prevent DOS paths from being IFS'd. echo "$f";; *) # Relative if test -f "$f"; then # Build tree echo "$f" elif test -f "$srcdir/$f"; then # Source tree echo "$srcdir/$f" else # /dev/null tree { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 echo "$as_me: error: cannot find input file: $f" >&2;} { (exit 1); exit 1; }; } fi;; esac done` || { (exit 1); exit 1; } # Remove the trailing spaces. sed 's/[ ]*$//' $ac_file_inputs >$tmp/in _ACEOF # Transform confdefs.h into two sed scripts, `conftest.defines' and # `conftest.undefs', that substitutes the proper values into # config.h.in to produce config.h. The first handles `#define' # templates, and the second `#undef' templates. # And first: Protect against being on the right side of a sed subst in # config.status. Protect against being in an unquoted here document # in config.status. rm -f conftest.defines conftest.undefs # Using a here document instead of a string reduces the quoting nightmare. # Putting comments in sed scripts is not portable. # # `end' is used to avoid that the second main sed command (meant for # 0-ary CPP macros) applies to n-ary macro definitions. # See the Autoconf documentation for `clear'. cat >confdef2sed.sed <<\_ACEOF s/[\\&,]/\\&/g s,[\\$`],\\&,g t clear : clear s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*\)\(([^)]*)\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1\2${ac_dC}\3${ac_dD},gp t end s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD},gp : end _ACEOF # If some macros were called several times there might be several times # the same #defines, which is useless. Nevertheless, we may not want to # sort them, since we want the *last* AC-DEFINE to be honored. uniq confdefs.h | sed -n -f confdef2sed.sed >conftest.defines sed 's/ac_d/ac_u/g' conftest.defines >conftest.undefs rm -f confdef2sed.sed # This sed command replaces #undef with comments. This is necessary, for # example, in the case of _POSIX_SOURCE, which is predefined and required # on some systems where configure will not decide to define it. cat >>conftest.undefs <<\_ACEOF s,^[ ]*#[ ]*undef[ ][ ]*[a-zA-Z_][a-zA-Z_0-9]*,/* & */, _ACEOF # Break up conftest.defines because some shells have a limit on the size # of here documents, and old seds have small limits too (100 cmds). echo ' # Handle all the #define templates only if necessary.' >>$CONFIG_STATUS echo ' if grep "^[ ]*#[ ]*define" $tmp/in >/dev/null; then' >>$CONFIG_STATUS echo ' # If there are no defines, we may have an empty if/fi' >>$CONFIG_STATUS echo ' :' >>$CONFIG_STATUS rm -f conftest.tail while grep . conftest.defines >/dev/null do # Write a limited-size here document to $tmp/defines.sed. echo ' cat >$tmp/defines.sed <>$CONFIG_STATUS # Speed up: don't consider the non `#define' lines. echo '/^[ ]*#[ ]*define/!b' >>$CONFIG_STATUS # Work around the forget-to-reset-the-flag bug. echo 't clr' >>$CONFIG_STATUS echo ': clr' >>$CONFIG_STATUS sed ${ac_max_here_lines}q conftest.defines >>$CONFIG_STATUS echo 'CEOF sed -f $tmp/defines.sed $tmp/in >$tmp/out rm -f $tmp/in mv $tmp/out $tmp/in ' >>$CONFIG_STATUS sed 1,${ac_max_here_lines}d conftest.defines >conftest.tail rm -f conftest.defines mv conftest.tail conftest.defines done rm -f conftest.defines echo ' fi # grep' >>$CONFIG_STATUS echo >>$CONFIG_STATUS # Break up conftest.undefs because some shells have a limit on the size # of here documents, and old seds have small limits too (100 cmds). echo ' # Handle all the #undef templates' >>$CONFIG_STATUS rm -f conftest.tail while grep . conftest.undefs >/dev/null do # Write a limited-size here document to $tmp/undefs.sed. echo ' cat >$tmp/undefs.sed <>$CONFIG_STATUS # Speed up: don't consider the non `#undef' echo '/^[ ]*#[ ]*undef/!b' >>$CONFIG_STATUS # Work around the forget-to-reset-the-flag bug. echo 't clr' >>$CONFIG_STATUS echo ': clr' >>$CONFIG_STATUS sed ${ac_max_here_lines}q conftest.undefs >>$CONFIG_STATUS echo 'CEOF sed -f $tmp/undefs.sed $tmp/in >$tmp/out rm -f $tmp/in mv $tmp/out $tmp/in ' >>$CONFIG_STATUS sed 1,${ac_max_here_lines}d conftest.undefs >conftest.tail rm -f conftest.undefs mv conftest.tail conftest.undefs done rm -f conftest.undefs cat >>$CONFIG_STATUS <<\_ACEOF # Let's still pretend it is `configure' which instantiates (i.e., don't # use $as_me), people would be surprised to read: # /* config.h. Generated by config.status. */ if test x"$ac_file" = x-; then echo "/* Generated by configure. */" >$tmp/config.h else echo "/* $ac_file. Generated by configure. */" >$tmp/config.h fi cat $tmp/in >>$tmp/config.h rm -f $tmp/in if test x"$ac_file" != x-; then if diff $ac_file $tmp/config.h >/dev/null 2>&1; then { echo "$as_me:$LINENO: $ac_file is unchanged" >&5 echo "$as_me: $ac_file is unchanged" >&6;} else ac_dir=`(dirname "$ac_file") 2>/dev/null || $as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$ac_file" : 'X\(//\)[^/]' \| \ X"$ac_file" : 'X\(//\)$' \| \ X"$ac_file" : 'X\(/\)' \| \ . : '\(.\)' 2>/dev/null || echo X"$ac_file" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } /^X\(\/\/\)[^/].*/{ s//\1/; q; } /^X\(\/\/\)$/{ s//\1/; q; } /^X\(\/\).*/{ s//\1/; q; } s/.*/./; q'` { if $as_mkdir_p; then mkdir -p "$ac_dir" else as_dir="$ac_dir" as_dirs= while test ! -d "$as_dir"; do as_dirs="$as_dir $as_dirs" as_dir=`(dirname "$as_dir") 2>/dev/null || $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$as_dir" : 'X\(//\)[^/]' \| \ X"$as_dir" : 'X\(//\)$' \| \ X"$as_dir" : 'X\(/\)' \| \ . : '\(.\)' 2>/dev/null || echo X"$as_dir" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } /^X\(\/\/\)[^/].*/{ s//\1/; q; } /^X\(\/\/\)$/{ s//\1/; q; } /^X\(\/\).*/{ s//\1/; q; } s/.*/./; q'` done test ! -n "$as_dirs" || mkdir $as_dirs fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} { (exit 1); exit 1; }; }; } rm -f $ac_file mv $tmp/config.h $ac_file fi else cat $tmp/config.h rm -f $tmp/config.h fi # Compute $ac_file's index in $config_headers. _am_stamp_count=1 for _am_header in $config_headers :; do case $_am_header in $ac_file | $ac_file:* ) break ;; * ) _am_stamp_count=`expr $_am_stamp_count + 1` ;; esac done echo "timestamp for $ac_file" >`(dirname $ac_file) 2>/dev/null || $as_expr X$ac_file : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X$ac_file : 'X\(//\)[^/]' \| \ X$ac_file : 'X\(//\)$' \| \ X$ac_file : 'X\(/\)' \| \ . : '\(.\)' 2>/dev/null || echo X$ac_file | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } /^X\(\/\/\)[^/].*/{ s//\1/; q; } /^X\(\/\/\)$/{ s//\1/; q; } /^X\(\/\).*/{ s//\1/; q; } s/.*/./; q'`/stamp-h$_am_stamp_count done _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF # # CONFIG_COMMANDS section. # for ac_file in : $CONFIG_COMMANDS; do test "x$ac_file" = x: && continue ac_dest=`echo "$ac_file" | sed 's,:.*,,'` ac_source=`echo "$ac_file" | sed 's,[^:]*:,,'` ac_dir=`(dirname "$ac_dest") 2>/dev/null || $as_expr X"$ac_dest" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$ac_dest" : 'X\(//\)[^/]' \| \ X"$ac_dest" : 'X\(//\)$' \| \ X"$ac_dest" : 'X\(/\)' \| \ . : '\(.\)' 2>/dev/null || echo X"$ac_dest" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } /^X\(\/\/\)[^/].*/{ s//\1/; q; } /^X\(\/\/\)$/{ s//\1/; q; } /^X\(\/\).*/{ s//\1/; q; } s/.*/./; q'` { if $as_mkdir_p; then mkdir -p "$ac_dir" else as_dir="$ac_dir" as_dirs= while test ! -d "$as_dir"; do as_dirs="$as_dir $as_dirs" as_dir=`(dirname "$as_dir") 2>/dev/null || $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$as_dir" : 'X\(//\)[^/]' \| \ X"$as_dir" : 'X\(//\)$' \| \ X"$as_dir" : 'X\(/\)' \| \ . : '\(.\)' 2>/dev/null || echo X"$as_dir" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } /^X\(\/\/\)[^/].*/{ s//\1/; q; } /^X\(\/\/\)$/{ s//\1/; q; } /^X\(\/\).*/{ s//\1/; q; } s/.*/./; q'` done test ! -n "$as_dirs" || mkdir $as_dirs fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} { (exit 1); exit 1; }; }; } ac_builddir=. if test "$ac_dir" != .; then ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` # A "../" for each directory in $ac_dir_suffix. ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` else ac_dir_suffix= ac_top_builddir= fi case $srcdir in .) # No --srcdir option. We are building in place. ac_srcdir=. if test -z "$ac_top_builddir"; then ac_top_srcdir=. else ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` fi ;; [\\/]* | ?:[\\/]* ) # Absolute path. ac_srcdir=$srcdir$ac_dir_suffix; ac_top_srcdir=$srcdir ;; *) # Relative path. ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix ac_top_srcdir=$ac_top_builddir$srcdir ;; esac # Do not use `cd foo && pwd` to compute absolute paths, because # the directories may not exist. case `pwd` in .) ac_abs_builddir="$ac_dir";; *) case "$ac_dir" in .) ac_abs_builddir=`pwd`;; [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; *) ac_abs_builddir=`pwd`/"$ac_dir";; esac;; esac case $ac_abs_builddir in .) ac_abs_top_builddir=${ac_top_builddir}.;; *) case ${ac_top_builddir}. in .) ac_abs_top_builddir=$ac_abs_builddir;; [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; esac;; esac case $ac_abs_builddir in .) ac_abs_srcdir=$ac_srcdir;; *) case $ac_srcdir in .) ac_abs_srcdir=$ac_abs_builddir;; [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; esac;; esac case $ac_abs_builddir in .) ac_abs_top_srcdir=$ac_top_srcdir;; *) case $ac_top_srcdir in .) ac_abs_top_srcdir=$ac_abs_builddir;; [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; esac;; esac { echo "$as_me:$LINENO: executing $ac_dest commands" >&5 echo "$as_me: executing $ac_dest commands" >&6;} case $ac_dest in intltool ) for file in intltool-extract intltool-merge intltool-update; do sed -e "s|@INTLTOOL_EXTRACT@|`pwd`/intltool-extract|g" \ -e "s|@INTLTOOL_LIBDIR@|${INTLTOOL_LIBDIR}|g" \ -e "s|@INTLTOOL_ICONV@|${INTLTOOL_ICONV}|g" \ -e "s|@INTLTOOL_MSGFMT@|${INTLTOOL_MSGFMT}|g" \ -e "s|@INTLTOOL_MSGMERGE@|${INTLTOOL_MSGMERGE}|g" \ -e "s|@INTLTOOL_XGETTEXT@|${INTLTOOL_XGETTEXT}|g" \ -e "s|@INTLTOOL_PERL@|${INTLTOOL_PERL}|g" \ < ${ac_aux_dir}/${file}.in > ${file}.out if cmp -s ${file} ${file}.out 2>/dev/null; then rm -f ${file}.out else mv -f ${file}.out ${file} fi chmod ugo+x ${file} chmod u+w ${file} done ;; depfiles ) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do # Strip MF so we end up with the name of the file. mf=`echo "$mf" | sed -e 's/:.*$//'` # Check whether this is an Automake generated Makefile or not. # We used to match only the files named `Makefile.in', but # some people rename them; so instead we look at the file content. # Grep'ing the first line is not enough: some people post-process # each Makefile.in and add a new line on top of each file to say so. # So let's grep whole file. if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then dirpart=`(dirname "$mf") 2>/dev/null || $as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$mf" : 'X\(//\)[^/]' \| \ X"$mf" : 'X\(//\)$' \| \ X"$mf" : 'X\(/\)' \| \ . : '\(.\)' 2>/dev/null || echo X"$mf" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } /^X\(\/\/\)[^/].*/{ s//\1/; q; } /^X\(\/\/\)$/{ s//\1/; q; } /^X\(\/\).*/{ s//\1/; q; } s/.*/./; q'` else continue fi # Extract the definition of DEPDIR, am__include, and am__quote # from the Makefile without running `make'. DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` test -z "$DEPDIR" && continue am__include=`sed -n 's/^am__include = //p' < "$mf"` test -z "am__include" && continue am__quote=`sed -n 's/^am__quote = //p' < "$mf"` # When using ansi2knr, U may be empty or an underscore; expand it U=`sed -n 's/^U = //p' < "$mf"` # Find all dependency output files, they are included files with # $(DEPDIR) in their names. We invoke sed twice because it is the # simplest approach to changing $(DEPDIR) to its actual value in the # expansion. for file in `sed -n " s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do # Make sure the directory exists. test -f "$dirpart/$file" && continue fdir=`(dirname "$file") 2>/dev/null || $as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$file" : 'X\(//\)[^/]' \| \ X"$file" : 'X\(//\)$' \| \ X"$file" : 'X\(/\)' \| \ . : '\(.\)' 2>/dev/null || echo X"$file" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } /^X\(\/\/\)[^/].*/{ s//\1/; q; } /^X\(\/\/\)$/{ s//\1/; q; } /^X\(\/\).*/{ s//\1/; q; } s/.*/./; q'` { if $as_mkdir_p; then mkdir -p $dirpart/$fdir else as_dir=$dirpart/$fdir as_dirs= while test ! -d "$as_dir"; do as_dirs="$as_dir $as_dirs" as_dir=`(dirname "$as_dir") 2>/dev/null || $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$as_dir" : 'X\(//\)[^/]' \| \ X"$as_dir" : 'X\(//\)$' \| \ X"$as_dir" : 'X\(/\)' \| \ . : '\(.\)' 2>/dev/null || echo X"$as_dir" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } /^X\(\/\/\)[^/].*/{ s//\1/; q; } /^X\(\/\/\)$/{ s//\1/; q; } /^X\(\/\).*/{ s//\1/; q; } s/.*/./; q'` done test ! -n "$as_dirs" || mkdir $as_dirs fi || { { echo "$as_me:$LINENO: error: cannot create directory $dirpart/$fdir" >&5 echo "$as_me: error: cannot create directory $dirpart/$fdir" >&2;} { (exit 1); exit 1; }; }; } # echo "creating $dirpart/$file" echo '# dummy' > "$dirpart/$file" done done ;; default-1 ) case "$CONFIG_FILES" in *po/Makefile.in*) sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile esac ;; po/stamp-it ) rm -f "po/stamp-it" "po/stamp-it.tmp" "po/POTFILES" "po/Makefile.tmp" >"po/stamp-it.tmp" sed '/^#/d s/^[[].*] *// /^[ ]*$/d '"s|^| $ac_top_srcdir/|" \ "$srcdir/po/POTFILES.in" | sed '$!s/$/ \\/' >"po/POTFILES" if test ! -f "po/Makefile"; then { { echo "$as_me:$LINENO: error: po/Makefile is not ready." >&5 echo "$as_me: error: po/Makefile is not ready." >&2;} { (exit 1); exit 1; }; } fi mv "po/Makefile" "po/Makefile.tmp" sed '/^POTFILES =/,/[^\\]$/ { /^POTFILES =/!d r po/POTFILES } ' "po/Makefile.tmp" >"po/Makefile" rm -f "po/Makefile.tmp" mv "po/stamp-it.tmp" "po/stamp-it" ;; esac done _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF { (exit 0); exit 0; } _ACEOF chmod +x $CONFIG_STATUS ac_clean_files=$ac_clean_files_save # configure is writing to config.log, and then calls config.status. # config.status does its own redirection, appending to config.log. # Unfortunately, on DOS this fails, as config.log is still kept open # by configure, so config.status won't be able to write to it; its # output is simply discarded. So we exec the FD to /dev/null, # effectively closing config.log, so it can be properly (re)opened and # appended to by config.status. When coming back to configure, we # need to make the FD available again. if test "$no_create" != yes; then ac_cs_success=: ac_config_status_args= test "$silent" = yes && ac_config_status_args="$ac_config_status_args --quiet" exec 5>/dev/null $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false exec 5>>config.log # Use ||, not &&, to avoid exiting from the if with $? = 1, which # would make configure fail if this is the last instruction. $ac_cs_success || { (exit 1); exit 1; } fi atomix-2.14.0/AUTHORS0000644000175000017500000000011010336223354011061 00000000000000Guilherme de S. Pastore Jens Finke atomix-2.14.0/COPYING0000644000175000017500000004311007373266131011062 00000000000000 GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) 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 2 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, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License. atomix-2.14.0/ChangeLog0000644000175000017500000011713510404437604011604 000000000000002006-03-11 Guilherme de S. Pastore * po/ChangeLog: fixed some stuff. * NEWS: updated. * configure.in: bumped version to 2.14.0. 2006-03-04 Guilherme de S. Pastore * atomix.desktop.in: fixed the categories list and the GNOME Bugzilla version. Closes bug #329319. 2006-01-15 Guilherme de S. Pastore * autogen.sh, configure.in, Makefile.am: applied patch from Christian Persch to use automake 1.9 and clean things up. Closes bug #327130. 2006-01-10 Abel Cheung * configure.in: Added "zh_HK" to ALL_LINGUAS. 2006-01-05 Guilherme de S. Pastore * NEWS: updated. * configure.in: release 2.13.4. 2006-01-05 Guilherme de S. Pastore * level.c, level.h, level-manager.c, level-private.h, main.c, main.h: modified to read the compound formula from the level files and to show them on the interface. Closes bug #312603. * level/: added formulas to all levels. 2005-12-20 Abel Cheung * configure.in: Added "fi" "mk" "ml" to ALL_LINGUAS. 2005-12-12 Guilherme de S. Pastore * NEWS: updated. * configure.in: released 2.13.3. 2005-12-06 Žygimantas Beručka * configure.in: Added Lithuanian to ALL_LINGUAS. 2005-12-01 Guilherme de S. Pastore * NEWS: updated * configure.in: released 2.13.2 2005-12-01 Guilherme de S. Pastore * src/board.c, src/main.c, src/main.h, src/undo.c: stop giving a pointer to the AtomixApp structure as argument to function calls: it only uses the stack unnecessarily, as it's a global variable. Also clean up the code a bit. 2005-12-01 Guilherme de S. Pastore * src/Makefile.am: don't fail when symbols are resolved in order (Cygwin). Thanks to yselkowitz@users.sourceforge.net. Closes bug #314130. 2005-12-01 Guilherme de S. Pastore * Makefile.am, src/Makefile.am, level/Makefile.am: fixes (actually work-arounds) to make the build process work and not break make distcheck. 2005-11-26 Guilherme de S. Pastore * gtk-clock.[ch]: replaced with a more specific implementation, only designed to suit Atomix's needs, removing bloat and lots of unnecessary overheads. * main.c: adapted for the change above. 2005-11-20 Amanpreet Singh Alam * configure.in: Add pa to ALL_LINGUAS. 2005-11-20 Kjartan Maraas * configure.in: Add nb to ALL_LINGUAS. 2005-11-17 Guilherme de S. Pastore * src/level-manager.c, src/theme-manager.c: move g_free and closedir calls to inside an if in both files, to avoid a crash in very weird environments (closes bug #321758) 2005-11-15 Guilherme de S. Pastore * level/sequence: fixed level sequence to comply with the new name of some levels. 2005-11-14 Guilherme de S. Pastore * level/Makefile.am: updated list of level files, needed due to the rename of some of them. * src/main.c: fix typo that prevented the build from happening. * NEWS: updated. * configure.in: bumped version to 1.2.4 2005-11-13 Guilherme de S. Pastore * level/: renamed Propylen to Propylene, Ethan to Ethane, Cyclo-buthane to Cyclobutane and Buthanol to Butanol (bugs #321371, #321369, #321367 and #321365, respectively). Thanks a lot for the revision, Christian Rose! 2005-09-12 Guilherme de S. Pastore * NEWS: updated * README: updated e-mail address * configure.in: released 1.2.3 2005-09-10 Guilherme de S. Pastore * src/main.c (verb_HelpAbout_cb): declare artists as const * AUTHORS, MAINTAINERS, src/main.c: updated e-mail address 2005-08-05 Guilherme de S. Pastore * src/main.c: - move from GnomeAbout to GtkAbout - set icon as default, so it can be used by child windows with no icons, and mainly by GtkAbout 2005-08-04 Guilherme de S. Pastore * src/atomix-ui.xml: use more stock icons from GTK+, partially addressing bug #312476 2005-06-26 Guilherme de S. Pastore * configure.in: release 1.2.2 2005-06-26 Guilherme de S. Pastore * atomix.desktop.in: - add encoding data - add information about bug reporting - do not hardcode the path to the icon * atomix-splash.png: removed; had been laying around even after the removal of splash screens. 2005-06-24 Guilherme de S. Pastore * Makefile.am: removed atomix-logo.png from EXTRA_DIST, it's not necessary 2005-06-23 Guilherme de S. Pastore * configure.in: changed to comply with the move to autoconf 2.52. 2005-06-20 Guilherme de S. Pastore * src/main.[ch], src/board.c, undo.c: renamed GAME_STATE_LEVEL_RUNNING to GAME_STATE_RUNNING and introduced GAME_STATE_RUNNING_UNMOVED, which means no atom has been moved yet (or, more precisely, that there's no move in the undo stack), so neither "Undo" or "Skip" should be available. Several tweaks on the code structure had to be made to allow this. 2005-06-18 Guilherme de S. Pastore * MAINTAINERS: added. * NEWS: updated (to catch up with changes since 1.1) * README: rewritten from scratch. 2005-06-17 Guilherme de S. Pastore * level/dimethylether.atomix.xml: molecule/level name is "Dimethyl Ether", not "Dymethil Ether". * level/sequence: replace "Dimethylether" with "Dimethyl Ether". * configure.in: change version to 1.2.1, due to minor post-release fix. 2005-06-17 Guilherme de S. Pastore * atomix.desktop.in, src/main.c (create_gui): use atomix-icon.png as icon. Thanks to Leonardo Pereira for creating the image. * configure.in: - don't require libglade, as we haven't been using it for a while. - bump version to 1.2 2005-06-16 Guilherme de S. Pastore * level/*.old, level/Makefile.in, level/Makefile.am: moved from old level file format to the current one, instead of converting at build-time. * src/main.c, src/level-manager.c, level/*.atomix.xml: made the name of the levels (which correspond to the name of the molecules) translatable. * level/dymethilether.atomix.xml: changed molecule name to Dymethil Ether. * level/formaldehyd.atomix.xml: renamed to Methanal, thanks to Leonardo Pereira for pointing this out. 2005-04-24 Guilherme de S. Pastore * src/main.c: replaced code to check if scores file is zero sized with a cleaner one, using stat. 2005-04-23 Guilherme de S. Pastore * src/goal-view.c, src/level-convert.c: apply patch from Andreas Jochens to fix build failures with gcc 4, and used the opportunity to clean the code up. 2005-04-09 Guilherme de S. Pastore * main.c: display a warning when trying to view scores with no or zero-sized scores file, instead of only silently ignoring it. 2005-03-21 Guilherme de S. Pastore * configure.in: bumped version to 1.1.2 2005-03-21 Guilherme de S. Pastore * src/undo.c (undo_exists): cleaned up. 2005-03-20 Guilherme de S. Pastore * src/main.c (atomix_exit): save score if game is running. * src/board.c (board_hide): hide the movement arrows, so that the user cannot move the atoms while the game is paused. (board_show): show the movement arrows, as they are now hidden by board_hide, but *only* if undo_exists returns TRUE. * src/undo.c, src/undo.h (undo_exists): created, to check if the level has just begun or not, by checking if there is something on the undo stack. 2005-03-19 Guilherme de S. Pastore * src/main.c (log_score): the name of the game is no longer translatable, as it only takes space unnecessarily on the potfiles. (verb_HelpAbout_cb): added the e-mails of the authors to the credits, and a translator credits feature. * README, atomix.desktop.in, src/board.c, src/board.h, * src/canvas_helper.c, src/canvas_helper.h, * src/goal-view.c, src/goal-view.h, src/goal.c, src/goal.h, * src/level-convert.c, src/level-manager.c, src/level-manager.h, * src/level-private.h, src/level.c, src/level.h, src/main.c, * src/main.h, src/playfield.c, src/playfield.h, src/preferences.c, * src/preferences.h, src/theme-manager.c, src/theme-manager.h, * src/theme-private.h, src/theme.c, src/theme.h, src/tile.c, * src/tile.h, src/undo.c, src/undo.h: changed all occurrences of "mind game" to "puzzle game". * Makefile.am: changed binary permissions from 2111 to 2755. 2005-03-18 Guilherme de S. Pastore * ChangeLog: fixed some broken entries. * src/: enforced GNU coding style, with some very small tweaks for better readability in specific situations. * src/level-convert.c, * src/level-manager.c, * src/main.c, * src/theme-manager.c: don't pass more than one test to g_file_test at once, it's unnecessary. * src/board.c (board_handle_item_event): fix call to return, using FALSE as value, as it's not a void-returning function. * src/main.c (main): removed call to create_user_config_dir. (create_user_config_dir): removed, since we don't want to force users to keep empty directories that might never be used. * AUTHORS, * src/main.c: added myself to the credits, since I'm the one responsible for atomix now. * src/atomix-ui.xml.in: renamed to atomix-ui.xml * src/atomix-ui.xml: added pertinent xml header * src/Makefile.am: don't merge translations into UI xml file, because libbonoboui translates it on-the-fly, and having them merged caused all the translations to be displayed on the menu. * configure.in: bumped version to 1.1 2004-08-23 Alastair McKinstry * configure.in: Added "ga" (Irish) to ALL_LINGUAS. 2004-06-06 Alexander Shopov * configure.in: Added "bg" (Bulgarian) to ALL_LINGUAS. 2004-05-12 Samúel Jón Gunnarsson * configure.in: Added "is" to ALL_LINGUAS. 2004-04-30 Adam Weinberger * configure.in: Added en_CA to ALL_LINGUAS. 2004-04-04 Gareth Owen * configure.in: Added en_GB to ALL_LINGUAS 2003-12-03 Jens Finke * configure.in: Bumped version to 1.0, removed *_DISABLE_DEPRECATED flags (to make it build with Gtk+ 2.3), added Korean translation, call AC_PROG_RANLIB. 2003-05-06 Danilo Šegan * configure.in: Added "sr" and "sr@Latn" to ALL_LINGUAS. 2003-03-20 Gil "Dolfin" Osher * configure.in: Added 'he' to ALL_LINGUAS. 2003-02-22 Laurent Dhima * configure.in: Added 'sq' to ALL_LINGUAS. 2003-02-21 Roozbeh Pournader * configure.in: Added "fa" to ALL_LINGUAS. 2003-01-24 Daniel Yacob * configure.in: Added am to ALL_LINGUAS. 2002-01-07 Naba Kumar * configure.in: Added hi (hindi) in ALL_LINGUAS 2002-12-30 Fatih Demir * configure.in: Added "kn" (Kannada) to the languages' list. 2002-11-22 Dmitry G. Mastrukov * configure.in: Added Belarusian to ALL_LINGUAS. 2002-11-05 Fatih Demir * configure.in: Added "ta" (Tamil) to the languages' list. 2002-10-09 Stanislav Brabec * configure.in: Added cs to ALL_LINGUAS. 2002-07-23 Jens Finke * configure.in: Check required library versions. * NEWS: Updated. 2002-07-18 Jens Finke * src/board.c (board_handle_item_event): Check if item is moving currently. * src/main.c (verb_GamesScores_cb), (log_score): Use gnome_scores_display (get_highscore_widget): Removed. * configure.in: Bumped version to 0.9.4 2002-07-18 Jens Finke * atomix-logo.png: New file. * Makefile.am: s/splash/logo. * src/board.c (create_logo), (board_show_logo): New functions. * src/main.c (set_game_not_running_state): Show logo. (setup_level): Hide logo. (splash_destroy), (splash_button_event), (create_splash): Removed. (main): Removed splash stuff. 2002-07-18 Jens Finke * atomix.desktop.in: Made it more spec compliant. * Makefile.am: Silent install data. * src/Makefile.am: Removed install data. 2002-06-21 Andras Timar * configure.in: Added "hu" to ALL_LINGUAS. 2002-05-29 Jens Finke * src/main.c (create_gui): Supply DATADIR to bonobo_ui_util_get_ui_fname to find the ui description even if the prefix is different from the gnome installation path. 2002-05-17 Jens Finke * NEWS: Updated. 2002-05-15 Jens Finke * configure.in: Bumped version to 0.9.3. 2002-05-15 Jens Finke * src/board.c: (create_message): Removed. (create_background_floor): New function. (board_init): No more message items. Call create_background_floor. (board_init_level): Removed message_items handling. (board_render): Render one more row/col for shadow layer, use affine translation to center playfield. (render_tile): Don't render floor tiles anymore. (board_view_message): Removed. (board_hide_message): Removed. (get_item_by_row_col): Use affine transformation to obtain item. (get_row_col_by_item): Added check for canvas item object. (board_handle_key_event): Check if item data "tile" is NULL. (selector_move_to): Use affine absolute transformation. (selector_destroy): Removed. (selector_create): Use level_items->level as parent group for cursor and arrows. (create_message): Removed. * goal.c (goal_reached): Check if start_row/start_col are valid positions. (compare_playfield_with_goal): Ensure that end_row/end_col is always a valid playfield position. * level-convert.c (convert_environment): Set only non NULL tiles. (update_tile): Ignore floor tiles and use NULL for them. (save_environment): Write only tiles which are non NULL. * main.c (atomix_exit): #ifdef'd debug output. (create_splash): Center splash on screen. * playfield.c (convert_wall_tiles): Return NULL for floor tiles. (playfield_generate_shadow): Ensure row/col are not larger than playfield. * theme.c (theme_apply_decoration): Check for tile == NULL. 2002-05-05 Gustavo Maciel Dias Vieira * configure.in (ALL_LINGUAS): Added pt_BR. 2002-04-29 Pablo Saratxaga * configure.in: Added "vi" to ALL_LINGUAS. 2002-04-29 Jens Finke * level/aceticacid.old, * level/acetone.old, * level/buthanol.old, * level/cyclo-buthane.old, * level/dimethylether.old, * level/ethan.old, * level/ethanal.old, * level/ethanol.old, * level/ethylene.old, * level/formaldehyd.old, * level/glycerin.old, * level/lactic-acid.old, * level/propanal.old, * level/propylen.old, * level/pyran.old, * level/transbutylen.old: New files. * level/sequence: Added new files. 2002-04-29 Jens Finke * src/Makefile.am (INCLUDES): Removed -DDEBUG flag. * src/goal-view.c (create_small_item): Use g_object_unref to free pixbuf. * src/tile.c: * src/level-convert.c: s/g_strcasecmp/g_ascii_strcasecmp * src/goal.c (goal_finalize): * src/level_manager.c (add_level): * src/playfield.c (playfield_finalize): * src/theme-manager.c (add_theme): * src/theme.c (theme_finalize), (create_sub_images): Guard debug messages with #ifdef DEBUG. 2002-04-26 Jens Finke * acconfig.h, * src/Makefile.am, * configure.in: Added EXTRA_WARNING_CFLAGS. * src/board.[ch], src/level_manager.c, src/main.c, src/playfield.c, src/theme-manager.c, src/theme.c: Removed deprecated Gtk/Gnome function calls. 2002-04-19 Pablo Saratxaga * configure.in: Added "ca" and "wa" to ALL_LINGUAS. 2002-04-11 Takeshi Aihana * configure.in: Added ja to ALL_LINGUAS. 2002-03-22 T?µivo Leedj?¤rv * configure.in: Added et to ALL_LINGUAS. 2002-02-27 Jens Finke This patch enables the concurrent usage of mouse and keyboard for atom movements. * src/board.c (get_row_col_by_item), (selector_show), (board_handle_arrow_event), (board_handle_item_event): New functions. (board_handle_key_event): Set mouse steering flag to false and show selector item explicitly. (selector_unselect): Show selector only if keyboard is used. (selector_arrows_show): Show arrows immediately if user uses mouse. (selector_create): Connect to arrow item event signal. (create_tile): Connect to item event signal, if its an atom tile. 2002-02-19 Simos Xenitellis * configure.in: Added "el" (Greek) to ALL_LINGUAS. 2002-02-17 Jens Finke * src/main.c (verb_HelpAbout_cb): Mark the strings in the about dialog as translatable. 2002-02-16 Jens Finke * atomix.desktop.in: New file. * Makefile.am: Install desktop file and setup scores. (EXTRA_DIST): Added atomix.desktop.in file * level/Makefile.am (EXTRA_DIST): Added sequence file. 2002-02-12 Jens Finke * configure.in: bumped version to 0.9.2 2002-02-12 Jens Finke * themes/default/arrow-left.png, * themes/default/arrow-top.png, * themes/default/arrow-right.png, * themes/default/arrow-bottom.png: Replaced dummy arrow icons with better ones. 2002-02-12 Jens Finke * themes/default/atom-o.png, * themes/default/atom-h.png, * themes/default/atom-c.png: Changed color to 0.4.x version style. 2002-02-11 Jens Finke * src/playfield.c (wall_map): Replaced default strings with "wall-horizontal-[left|right]-end". * themes/default/wall-horizontal-bottomx.png, * themes/default/wall-horizontal-topx.png, * themes/default/wall-single.png: Updated files. * themes/default/wall-horizontal-left-end.png, * themes/default/wall-horizontal-right-end.png: New files. * themes/default/theme, * themes/default/Makefile.am (THEME): Added new files. 2002-02-11 Jens Finke * src/theme.c: s/GDK_INTERP_BILINEAR/GDK_INTERP_LINEAR needed to make the alpha handling working again (!?). 2002-01-24 Jens Finke * src/Makefile.am (pf_test_SOURCES), (level_convert_SOURCES): Both need theme.[ch] now. * src/board.c (board_init_level): Submitt theme to playfield_generate_environment. * src/playfield.[ch] (playfield_generate_environment): Add some random decorations to basic wall/floor tiles. * src/theme-manager.c (load_theme): Handle decor node. (handle_tile_decor_node): New function. * src/theme-private.h (theme_add_image): Return id of added image. (theme_add_image_decoration): New function. * src/theme.[ch] (destroy_theme_image): Free decoration list. (theme_apply_decoration): New function. (theme_add_image): Return id of added image, initialize decoration list. (theme_add_image_decoration): New function. * themes/default/theme: Added decoration images. * themes/default/decor-fence.png|decor-holes.png|decor-liquid.png: New files. Test icons for decorations. 2002-01-23 Jens Finke * src/board.c (board_init), (board_init_level), (board_render), (render_tile), (board_clear): Consider new shadow layer. It's located above all other items, so that the atoms can now move into the shadow of a wall. Looks rather cool. * src/level-convert.c (convert_environment): Don't create tile neigbour map anymore. (update_tile): Simplified this method. Most of this will be done dynamically at runtime now. (create_tile_env), (get_env_tile_type): Removed functions. * src/playfield.[ch] (setup_translation_map), (get_env_tile_type), (create_tile_env), (convert_wall_tiles), (convert_shadow_tiles): New helper functions. (playfield_generate_environment), (playfield_generate_shadow): The functionality which was in level-convert.c before is now done dynamically at runtime with these new functions. * src/theme.c (get_theme_image_pixbuf): Transform image if there has been an additional alpha value specified for it. (create_sub_images): Don't care for alpha value here. * src/tile.h: Added new TileType TILE_TYPE_SHADOW. 2002-01-23 Jens Finke * themes/default/ChangeLog, src/ChangeLog: Removed and merged them with this ChangeLog. 2002-01-23 Jens Finke * themes/default/arrow-*.png, floor.png: Oops, forgot to re-add these icons. 2002-01-23 Jens Finke * themes/default/shadow-*.png: Replaced them with Jakub's dark original versions. * themes/default/theme: Set alpha value for the shadow images to 77. 2002-01-23 Jens Finke * themes/default/theme: Use only icon tag to register image files. 2002-01-23 Jens Finke * src/theme-manager.c (handle_title_icon_node): Assure alpha value is in the range [0,255]. * src/theme.c (create_sub_images): Apply alpha value on icon as specified in the theme. This way shadows are easier to create. 2002-01-23 Jens Finke * src/level-convert.c: (old_level_load_xml_file), (old_tile_load_xml), (calculate_translation_quark), (update_tile) (save_tile), (main): Translate old id based scheme to new GQuark based identification of icons. * src/theme-manager.c (load_theme): Handle 'icon' node, removed 'floor', 'atom', 'wall' and 'selector' handler. (handle_tile_icon_node): New function. (handle_tile_type_node), (handle_selector_node): Removed. * src/theme.c (theme_add_sub_image), (theme_add_sub_image_with_id), (theme_add_base_image), (add_theme_image_to_hashtable), (theme_add_base_image_with_id): Removed. (theme_add_image): New function. (theme_init), (theme_finalize), (get_theme_image_pixbuf), (create_sub_images), (theme_get_tile_image), (theme_get_selector_image), (theme_get_selector_images): Update to new GQuark based image identification. * src/tile.[ch] (tile_copy), (tile_get_base_id), (tile_add_sub_id), (tile_remove_sub_id), (tile_remove_all_sub_ids), (tile_set_base_id) (tile_new_from_xml), (tile_save_xml): Update to new GQuark based image identification. 2002-01-23 Jens Finke * level/Makefile.am: Set CLEANFILES variable. 2002-01-22 Jens Finke * themes/default/*.png: Renamed icons to new naming scheme, added wall-single.png wall-horizontal-bottomx.png, wall-horizontal-topx.png, wall-vertical-leftx.png wall-vertical-rightx.png. * themes/default/theme: Updated to new file naming scheme and added new files. 2002-01-22 Jens Finke * src/level-convert.c (update_tile): Consider new wall images during tile conversion. 2002-01-22 Jens Finke * level/Makefile.am: Create atomix level at compiltime with the latest ../src/level-convert program. * level/*.atomix: Removed all those files. Added *.old files instead which contain the level description from the gnome 1.4 release. Note: This will be a temporary solution. * .cvsignore: Added *.atomix. 2002-01-21 Wang Jian * configure.in(ALL_LINGUAS): Added zh_CN for Simplified Chinese. 2002-01-21 Jens Finke * src/main.c (verb_HelpAbout_cb): Updated about information. Don't force about window to a certain size. 2002-01-19 Hasbullah Bin Pit * configure.ini: Added Malay (ms)to ALL_LINGUAS. * po/ms.po: Added Malay Malay Translation by Mohamad Afifi Omar (App) 2001-12-12 Stanislav Visnovsky * configure.in: Added "sk" to ALL_LINGUAS. * po/sk.po: Added Slovak translation. 2001-12-10 Jens Finke * Released version 0.9.1 2001-12-09 Jens Finke * src/Makefile.am (INCLUDES): Removed ../intl dir from path. Use intltool to generate atomix-ui.xml from atomix-ui.xml.in. * src/atomix-ui.xml: Renamed to atomix-ui.xml.in * src/main.c: Include config.h (main): Set textdomain codeset to UTF-8. 2001-12-09 Jens Finke * src/Makefile.am (uidir): Install atomix-ui.xml in $(datadir)/gnome-2.0/ui. * src/main.c (create_gui): Use bonobo_ui_util_get_ui_fname to obtain ui xml path. (create_splash): Removed debug message. 2001-12-09 Jens Finke * Makefile.am (EXTRA_DIST): Added intl-tool-*.in files. * NEWS: Updated. 2001-12-09 Jens Finke * configure.in: Call AC_PROG_INTLTOOL. 2001-12-03 Jens Finke * src/atomix-ui.xml: Hide 'edit' menu for now. * src/main.c (verb_GameScores_cb): Show highscores again. (verb_HelpAbout_cb): Show about dialog. (controller_handle_action): Log score if the user ends the game and when he finished the last level. (log_score), (get_highscore_widget): New functions. (save_score): Removed function. 2001-12-02 Jens Finke * src/util.[ch]: Removed files. * src/canvas_helper.[ch]: Removed canvas_map stuff. 2001-12-02 Jens Finke * src/main.c (create_gui): Use g_signal_connect. (splash_destroy), (splash_button_event), (create_splash): New functions for splash screen handling. (main): Create splash screen. 2001-12-02 Jens Finke * src/board.c (board_init_level): Ref goal object. (board_clear): Unref goal object. * src/main.c: Rewrote the control flow handling. There is now a central function (controller_handle_action) which takes care of all the game state changes and need actions. Lot's of code could be removed because of this simplification. (calculate_score): New function. (update_player_info): Renamed to update_statistics. 2001-12-02 Jens Finke * src/Makefile.am (atomix_SOURCES): Added gtk-clock.[ch]. * src/gtk-clock.[ch]: New files. * src/gtk-time-limit.[ch]: Removed files. * src/main.c (get_app): Removed function. (game_init): Initialize the clock format. (game_prepare_level): Set clock to 0 seconds and start it. (game_level_timeout): Removed function. (game_bonus_level_timeout): Removed function. (game_level_finished): Stop clock and set to 0 seconds. (game_pause): Stop clock. (game_continue): Start clock. (add_statistics_table_entry): New utility function. (create_mainwin_content): Use add_statistics_table_entry. 2001-12-02 Jens Finke * Makefile.am (EXTRA_DIST), (splash_DATA): Added atomix-splash.png image. * configure.in: Bumped version to 0.9.1. * atomix-splash.png: New file. 2001-12-01 Jens Finke * src/atomix.h: Removed file. 2001-12-01 Jens Finke * src/atomix-ui.xml: Added more command shortcuts. Added 'Reset level' menu item. * src/undo.[ch]: Rewrote this. Stores unlimited moves in a stack like datastructure now. * src/board.c: Adapted to new undo design. (move_item_anim): Select item only if it was also selected before the animation. * src/main.c (verb_GameReset_cb): New callback function. (game_init): Don't connect to main window key press event. This enables the shortcuts again. (game_new): Grab focus for canvas widget. (create_mainwin_content): Connect key handler to playfield canvas key event. 2001-11-30 Yuriy Syrota * configure.in: Added uk (Ukrainian) to ALL_LINGUAS. 2001-11-30 Jens Finke * themes/default/Makefile.am (THEME): Added arrow-*.png files. 2001-11-30 Jens Finke * themes/default/theme: New format for selector specification. * themes/default/arrow-left.png, arrow-right.png, arrow-top.png, arrow-bottom.png: New files 2001-11-30 Jens Finke * src/board.c (board_init_level): Show atom items explicitely. * src/level_manager.c: Removed debug messages. (add_level): Made remaining output messages translateable. * src/main.c (create_user_config_dir): Rewrote function. (create_mainwin_content): Removed debug messages. (create_gui): Check existance of ui xml file. (main): Increased main window size. * src/theme-manager.c: Removed debug messages. 2001-11-30 Jens Finke * src/goal-view.[ch] (clear_view): Renamed to goal_view_clear and made it a public function. * src/main.c (game_prepare_level): Clear goal view. (game_clean_up): Clear goal view. 2001-11-30 Jens Finke * src/board.c (board_init): Create selector only once here not for every level initialization. (board_init_level): Place selector in the middle of the playfield. (board_destroy): Call selector_destroy. (board_undo_move): Hide selector during move. (board_clear): Just hide the selector, don't destroy it. (board_set_keyboard_control): Removed function. (move_item): Hide selector during atom move. (move_item_anim): Update status of selector after moving. (selector_move_to): Move the selector arrows too. (selector_unselect): Hide selector arrows. (selector_arrows_hide), (selector_hide), (show_arrow_group), (selector_arrows_show), (selector_destroy): New functions. Indicate possible atom directions through arrows. (selector_select): Show arrows. (selector_create): Create arrow canvas items too. * src/board.h (board_set_mouse_control), (board_set_keyboard_control): Removed declarations. * src/theme-manager.c (handle_selector_node): New function. (theme_manager_get_theme): Don't free theme_dir variable. (load_theme): Call handle_selector_node on 'selector' node. * src/theme-private.h (theme_set_selector_arrow_image): New declaration. * src/theme.[ch] (theme_get_selector_arrow_images): New function. (theme_set_selector_arrow_image): New function. 2001-11-29 German Poo-Caaman~o * configure.in: Added es (Spanish) to ALL_LINGUAS. 2001-11-28 Jens Finke * src/main.c (create_gui): Use new bonobo_ui_util_set_ui signature. Should be compilable now with the upcoming Gnome 2.0 beta version. 2001-11-27 Jesus Bravo Alvarez * configure.in: Added gl (Galician) to ALL_LINGUAS. 2001-11-27 Jens Finke * src/Makefile.am (atomix_SOURCES): Removed global.h. (libatomix_a_SOURCES): Added level-private.h. (EXTRA_DIST): Added atomix-ui.xml. * src/board.c (board_render): Don't print playfield layout. 2001-11-27 Jens Finke * configure.in: Bumped version to 0.9.0 2001-11-25 Jens Finke * src/Makefile.am: Install atomix-ui.xml file in $(pkgdatadir)/ui. Don't create score file at install time. * src/level-manager.c (level_manager_init_levels): Look for the level sequence description in the global atomix datadir too. Don't use '/' in g_build_filename function. * src/main.c (create_gui): Look for ui file in global datadir. * src/theme-manager.c (theme_manager_init_themes): Don't use '/' in g_build_filename. 2001-11-25 Jens Finke * src/board.c (selector_new): Add selector item to list of board canvas items. * src/main.c (game_skip_level): Increase level number. 2001-11-25 Jens Finke * src/board.c (board_render): Center the playfield correctly. * src/level-manager.c (add_level): No newline after debug output. * src/theme-manager.c (add_theme): No newline after debug output. * src/main.c (create_canvas_widget): Don't create scrolled window around gnome canvas. (main): Set initial size of main window to 620/420. 2001-11-25 Jens Finke * Makefile.am (SUBDIRS): Added level and themes dir. * configure.in: Generate Makefiles in level and themes dir. 2001-11-22 Jens Finke This is the first time after the GNOME 2.0 port that you can play atomix again. Well, theoretically. I must add the themes and levels to CVS yet. * src/board.c (move_item): The calculation of the item pixel position is somehow wrong. Added an ugly hack to correct this. Simplified control flow. * src/goal.c: Big changes here. With the new tile.[ch] design we can't use a hashtable as goal index anymore. There is now a gslist, which shouldn't be a performance hit since it stores only a couple of atom infos. (find_tile): New function, for searching in the list. (destroy_hash_value), (print_hash_table), (goal_print): removed functions. * src/main.c (game_prepare_level): Initialize the goal again. (game_level_finished): This uses the globale instance of AtomixApp now. This should be fixed. * src/tile.c (tile_finalize): Removed debug output. 2001-11-21 Jens Finke * src/board.c: Reworked this completely. Removed all the mouse handling stuff and the need for the canvas_map_* functions. Cleaned up the code. * src/main.c (on_key_press_event): New key press handler. (game_init): Register key event handler. (game_prepare_level): Don't free goal_pf. (game_level_timeout): Don't call board_show_normal_cursor. (game_level_finished): dito. 2001-11-21 Abel Cheung * configure.in: Added zh_TW to ALL_LINGUAS. 2001-11-20 Jens Finke * src/.cvsignore: Added level-convert and pf-test. 2001-11-20 Jens Finke * src/Checked huge page in. There are three major tile types now: ATOM, WALL and FLOOR. Each tile has a base image which may have overlay and underlay images too. Level descriptions consist of three parts now: environment, scenario and goal. These changes affects nearly all files. * src/level-convert.c: New file, converts levels from the 0.4.3 format to the new format. * src/pf-test.c: New file, checks functions of the playfield data type.. * src/Makefile.am (noinst_PROGRAMS): Added programs level-convert and pf-test. 2001-11-15 Jens Finke * src/goal-view.c (create_small_item): Scale the pixbuf with gdk_pixbuf_scale_simple. * src/main.c (create_canvas_widget): Create an aa canvas. 2001-11-14 Jens Finke * src/board.c (board_render): Use playfield_get_n_cols when iterating over the columns. * src/goal-view.c (clear_view): Check if item_group is != NULL. * src/level-manager.c (create_level_sequence): Added dummy handler for 'text' tag. (load_level): Added dummy handler for 'text' tag. Print just a message about unknown tag not a warning. * src/playfield.c (playfield_new_from_xml): Added dummy handler for 'text' tag. * src/theme-manager.c (load_theme), (handle_link_image_node), (handle_base_image_node): Added dummy handler for 'text' tag. * src/tile.c (tile_new_from_xml): Added dummy handler for 'text' tag. 2001-11-14 Jens Finke * src/level-private.h: Forgot to add this. So here it is. 2001-11-14 Jens Finke * src/board.c (board_render): Check for tile == NULL. * src/goal.c (destroy_hash_value): Use g_slist_free to free the list. * src/level-manager.c (level_manager_init_levels): Look in ~/.atomix/levels/ for 'sequence' file for now. (search_level_in_dir): Skip the dirs '.' and '..' correctly as well as the 'sequence' file. Use g_build_filename with NULL as last argument. (level_manager_get_next_level): Number of levels > 0 isn't an assertion anymore, but will be checked with a normal if statement. Get the filename from the hash table not the sequence list. (load_level): For a 'goal' node skip all other child nodes than 'playfield'. * src/main.c (game_user_quits): Use gtk_widget_destroy to free the dialog. Check user response against GTK_RESPONSE_YES. (game_finished): Use gtk_widget_destroy to free the dialog. * src/theme.c (get_theme_image_pixbuf): Ref every pixbuf before returning. 2001-11-14 Jens Finke * src/Makefile.am: Added playfield test program 'pf-test'. (atomix_SOURCES): Added goal-view.[ch], removed callbacks.[ch], preferences.[ch]. (libatomix_a_SOURCES): Added level-manager.[ch] * src/board.[ch]: Reworked this, so that it works with the other new classes. * src/goal-view.[ch]: New files. * src/goal.[ch]: Reworked this. It is now a seperate class with all the gui stuff moved to goal-view.[ch]. * src/callbacks.[ch]: Removed files. * src/canvas_helper.[ch]: Removed the non ref functions and removed the function name suffix _ref from the rest. * src/level-manager.[ch] (level_manager_is_last_level): New function. (level_manager_get_next_level): Use the filname from the successor of the search result. * src/level.c (level_get_playfield): Ref the outgoing playfield reference. (level_get_goal): dito. * src/level.h (level_get_type): Moved here from level-private.h. * src/main.[ch]: Reworked this and removed some of the functionality for now. It's more clean and structured now. Contains all the callbacks too. * src/theme-manager.c (handle_base_image_node): Ignore non bimage xml nodes. (handle_link_image_node): Ignore non limage xml nodes. * src/theme.h (theme_get_type): Moved here from theme-private.h. * src/theme.c (theme_finalize): Don't iterate through the hash table to free objects. (theme_new): Provide destroy method for hash data with g_hash_table_new_full. * src/util.c: Commented out all the functionality for now. We havn't a statusbar yet. * src/global.h: Removed file. 2001-11-13 Jens Finke * src/level-manager.[ch]: New files. * src/level.[ch]: Reworked these files, moved a lot of the general level handling to level-manager.[ch]. * src/playfield.[ch] (playfield_get_type): Fixed class type. (playfield_new_from_xml): New function. * src/theme-manager.c (theme_manager_init): Provide destroy functions for hash table key and value objects. (destroy_theme_item): Removed. (load_theme): Create theme after xml document creation. * src/theme.c (theme_get_type): Fixed class type. * src/tile.[ch] (tile_new_from_xml): New function. 2001-11-12 Jens Finke * src/goal.[ch]: Reworked these files. * src/main.[ch] (get_app): Added this function again temporary. * src/playfield.[ch] (playfield_get_n_rows), (playfield_get_n_cols): New functions. * src/tile.[ch]: Added link_id_value attribute, which defines the attached links as one single integer value. (tile_init), (tile_copy), (tile_add_link), (tile_remove_link), (tile_remove_all_links): Update link_id_value. (tile_is_equal): New function, compares two tiles. (tile_get_hash_value): New function, returns a single value, which identifies a tile uniquely. (tile_print): Made the output better fitting into playfield_print. 2001-11-12 Jens Finke * src/playfield.[ch]: Rewrote this, uses glib object system now. 2001-11-12 Jens Finke * src/theme-manager.c (theme_manager_init), (search_themes_in_dir), (load_theme): Removed unneeded variables. (string_to_tile_link): Initialize link with TILE_LINK_LAST. * src/theme.[ch] (theme_get_name), (theme_get_animstep): New functions. 2001-11-12 Jens Finke * src/board.c: Adaptions to make it work with the new tile.[ch]. (create_obstacle), (create_moveable), (create_item): Removed deprecated functions. (create_tile): New function, which uses the new theme interface. * src/callbacks.c (atomix_exit): Use g_object_unref to free the theme. * src/main.[ch]: Adaptions to the new theme[-manager] interface. * src/tile.c (tile_has_link): Return always false on TILE_LINK_LAST. 2001-11-12 Jens Finke * src/ChangeLog: New ChangeLog for all changes in the src dir. 2001-11-12 Jens Finke * src/theme.[ch]: Rewrote this. Adapted it to changes in tile.[ch]. * src/theme-manager.[ch]: New files. Handle all the managing stuff regarding to themes. * src/theme-private.h: New file, contains the private attributes and functions of a theme. * Makefile.am (SOURCES): Added theme-manager.[ch] and theme-private.h. (INCLUDES): Addded -Wall compiler option. 2001-11-12 Carlos Perell?³ Mar?­n * configure.in: Added the new locales from GNOME 1.4 version. 2001-11-11 Jens Finke * src/tile.[ch]: Rewrote this completely. There is a better handling of the available atom links. 2001-11-10 Jens Finke * Initial import to gnome cvs repository. atomix-2.14.0/INSTALL0000644000175000017500000002243210404437655011064 00000000000000Installation Instructions ************************* Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005 Free Software Foundation, Inc. This file is free documentation; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. Basic Installation ================== These are generic installation instructions. The `configure' shell script attempts to guess correct values for various system-dependent variables used during compilation. It uses those values to create a `Makefile' in each directory of the package. It may also create one or more `.h' files containing system-dependent definitions. Finally, it creates a shell script `config.status' that you can run in the future to recreate the current configuration, and a file `config.log' containing compiler output (useful mainly for debugging `configure'). It can also use an optional file (typically called `config.cache' and enabled with `--cache-file=config.cache' or simply `-C') that saves the results of its tests to speed up reconfiguring. (Caching is disabled by default to prevent problems with accidental use of stale cache files.) If you need to do unusual things to compile the package, please try to figure out how `configure' could check whether to do them, and mail diffs or instructions to the address given in the `README' so they can be considered for the next release. If you are using the cache, and at some point `config.cache' contains results you don't want to keep, you may remove or edit it. The file `configure.ac' (or `configure.in') is used to create `configure' by a program called `autoconf'. You only need `configure.ac' if you want to change it or regenerate `configure' using a newer version of `autoconf'. The simplest way to compile this package is: 1. `cd' to the directory containing the package's source code and type `./configure' to configure the package for your system. If you're using `csh' on an old version of System V, you might need to type `sh ./configure' instead to prevent `csh' from trying to execute `configure' itself. Running `configure' takes awhile. While running, it prints some messages telling which features it is checking for. 2. Type `make' to compile the package. 3. Optionally, type `make check' to run any self-tests that come with the package. 4. Type `make install' to install the programs and any data files and documentation. 5. You can remove the program binaries and object files from the source code directory by typing `make clean'. To also remove the files that `configure' created (so you can compile the package for a different kind of computer), type `make distclean'. There is also a `make maintainer-clean' target, but that is intended mainly for the package's developers. If you use it, you may have to get all sorts of other programs in order to regenerate files that came with the distribution. Compilers and Options ===================== Some systems require unusual options for compilation or linking that the `configure' script does not know about. Run `./configure --help' for details on some of the pertinent environment variables. You can give `configure' initial values for configuration parameters by setting variables in the command line or in the environment. Here is an example: ./configure CC=c89 CFLAGS=-O2 LIBS=-lposix *Note Defining Variables::, for more details. Compiling For Multiple Architectures ==================================== You can compile the package for more than one kind of computer at the same time, by placing the object files for each architecture in their own directory. To do this, you must use a version of `make' that supports the `VPATH' variable, such as GNU `make'. `cd' to the directory where you want the object files and executables to go and run the `configure' script. `configure' automatically checks for the source code in the directory that `configure' is in and in `..'. If you have to use a `make' that does not support the `VPATH' variable, you have to compile the package for one architecture at a time in the source code directory. After you have installed the package for one architecture, use `make distclean' before reconfiguring for another architecture. Installation Names ================== By default, `make install' installs the package's commands under `/usr/local/bin', include files under `/usr/local/include', etc. You can specify an installation prefix other than `/usr/local' by giving `configure' the option `--prefix=PREFIX'. You can specify separate installation prefixes for architecture-specific files and architecture-independent files. If you pass the option `--exec-prefix=PREFIX' to `configure', the package uses PREFIX as the prefix for installing programs and libraries. Documentation and other data files still use the regular prefix. In addition, if you use an unusual directory layout you can give options like `--bindir=DIR' to specify different values for particular kinds of files. Run `configure --help' for a list of the directories you can set and what kinds of files go in them. If the package supports it, you can cause programs to be installed with an extra prefix or suffix on their names by giving `configure' the option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'. Optional Features ================= Some packages pay attention to `--enable-FEATURE' options to `configure', where FEATURE indicates an optional part of the package. They may also pay attention to `--with-PACKAGE' options, where PACKAGE is something like `gnu-as' or `x' (for the X Window System). The `README' should mention any `--enable-' and `--with-' options that the package recognizes. For packages that use the X Window System, `configure' can usually find the X include and library files automatically, but if it doesn't, you can use the `configure' options `--x-includes=DIR' and `--x-libraries=DIR' to specify their locations. Specifying the System Type ========================== There may be some features `configure' cannot figure out automatically, but needs to determine by the type of machine the package will run on. Usually, assuming the package is built to be run on the _same_ architectures, `configure' can figure that out, but if it prints a message saying it cannot guess the machine type, give it the `--build=TYPE' option. TYPE can either be a short name for the system type, such as `sun4', or a canonical name which has the form: CPU-COMPANY-SYSTEM where SYSTEM can have one of these forms: OS KERNEL-OS See the file `config.sub' for the possible values of each field. If `config.sub' isn't included in this package, then this package doesn't need to know the machine type. If you are _building_ compiler tools for cross-compiling, you should use the option `--target=TYPE' to select the type of system they will produce code for. If you want to _use_ a cross compiler, that generates code for a platform different from the build platform, you should specify the "host" platform (i.e., that on which the generated programs will eventually be run) with `--host=TYPE'. Sharing Defaults ================ If you want to set default values for `configure' scripts to share, you can create a site shell script called `config.site' that gives default values for variables like `CC', `cache_file', and `prefix'. `configure' looks for `PREFIX/share/config.site' if it exists, then `PREFIX/etc/config.site' if it exists. Or, you can set the `CONFIG_SITE' environment variable to the location of the site script. A warning: not all `configure' scripts look for a site script. Defining Variables ================== Variables not defined in a site shell script can be set in the environment passed to `configure'. However, some packages may run configure again during the build, and the customized values of these variables may be lost. In order to avoid this problem, you should set them in the `configure' command line, using `VAR=value'. For example: ./configure CC=/usr/local2/bin/gcc causes the specified `gcc' to be used as the C compiler (unless it is overridden in the site shell script). Here is a another example: /bin/bash ./configure CONFIG_SHELL=/bin/bash Here the `CONFIG_SHELL=/bin/bash' operand causes subsequent configuration-related scripts to be executed by `/bin/bash'. `configure' Invocation ====================== `configure' recognizes the following options to control how it operates. `--help' `-h' Print a summary of the options to `configure', and exit. `--version' `-V' Print the version of Autoconf used to generate the `configure' script, and exit. `--cache-file=FILE' Enable the cache: use and save the results of the tests in FILE, traditionally `config.cache'. FILE defaults to `/dev/null' to disable caching. `--config-cache' `-C' Alias for `--cache-file=config.cache'. `--quiet' `--silent' `-q' Do not print messages saying which checks are being made. To suppress all normal output, redirect it to `/dev/null' (any error messages will still be shown). `--srcdir=DIR' Look for the package's source code in directory DIR. Usually `configure' can determine that directory automatically. `configure' also accepts some other, not widely useful, options. Run `configure --help' for more details. atomix-2.14.0/NEWS0000644000175000017500000001272410404437552010531 000000000000002006-03-11: Released version 2.14.0 * Fixed list of categories (bug #329319) * Update and cleanup of the build system (bug #327130) * New and updated translations: - Albanian [Laurent Dhima] - Belarusian [Ales Nyakhaychyk] - Bulgarian [Alexander Shopov] - Canadian English [Adam Weinberger] - Chinese (Hong Kong) [Abel Cheung] - Chinese (Taiwan) [Abel Cheung] - Czech [Lukas Novotny] - Dutch [Tino Meinen] - Estonian [Ivar Smolin] - Finnish [Ilkka Tuohela] - Galician [Ignacio Casal Quinteiro] - Georgian [Gia Shervashidze] - German [Hendrik Brandt] - Gujarati [Ankit Patel] - Hungarian [Gabor Kelemen] - Japanese [Takeshi AIHANA] - Norwegian [Kjartan Maraas] - Norwegian (bokmål) [Kjartan Maraas] - Russian [Valek Filippov] - Serbian [Slobodan D. Sredojevic] - Spanish [Francisco Javier F. Serrador] - Vietnamese [Clytie Siddall] 2006-01-05: Released version 2.13.4 * Include formulas of all compounds in the interface * Actually install Finnish, Macedonian and Malayalam translations * Updated translations: - Brazilian Portuguese [Guilherme de S. Pastore] - Serbian [Slobodan D. Sredojevic] - Tradicional Chinese [Abel Cheung] - Vietnamese [Clytie Siddall] 2005-12-12: Released version 2.13.3 * Updated translations: - Dutch [Vincent van Adrighem] - Gujarati [Ankit Patel] - Lithuanian [Žygimantas Beručka] - Norwegian bokmål [Kjartan Maraas] 2005-12-01: Released version 2.13.2 * Bumped version number to catch up with the GNOME release it is targettin * Fixes build on Cygwin * Fixes several bugs in the last release * Atomix now uses less CPU time and features greatly reduced memory consumption * Updated translations: - Albanian [Laurent Dhima] - Bulgarian [Alexander Shopov] - Canadian English [Adam Weinberger] - Estonian [Ivar Smolin] - Japanese [Takeshi AIHANA] - Norwegian (bokmål) [Kjartan Maraas] - Punjabi [Amanpreet Singh Alam] - Slovak [Marcel Telka] 2005-11-14: Released version 1.2.4 * Not many news, but great ones will follow * Fixes the names of some levels, thanks to Christian Rose! * Updated translations: - Brazilian Portuguese [Guilherme de S. Pastore] - Finnish [Ilkka Tuohela] - Galician [Ignacio Casal Quinteiro] - Slovak [Marcel Telka] - Spanish [Francisco Javier F. Serrador] 2005-09-12: Released version 1.2.3 * Fixes some bugs * Brings up-to-date documentation * Integrates better with the environment, mainly by making more use of GTK+ stock icons and the new default GtkAbout 2005-06-26: Released version 1.2.2 * Build and installation improvements * Better desktop integration through the .desktop file * Usability improvements, by disabling menu items at times they cannot be used 2005-06-17: Released version 1.2.1 * Builds with GCC 4.0. * Doesn't require libglade to build. * Provides an icon, both for the window and the menu. * Greatly improved internationalization, by allowing the translation of molecule names. * Tries not to silently ignore the user when no action can be taken (e.g. viewing scores when no scores were achieved). * Changes commercial namings of molecules to their original (correct?) names, such as Formaldehyd being renamed to Methanal. * Finally moved to the new level file format, instead of converting old formats at build-time. That also means level-convert is likely to die pretty soon. 2005-03-21: Released version 1.1.2 * Saves score if the application is closed but a game is running. * Hide the movement arrows when the atoms are hidden, namely during a game pause (and, therefore, prevent them from moving). * General improvements. 2005-03-18: Released version 1.1 * New maintainer (Atomix is now developed by another person) * Fixes the bug that made all the translations available be displayed on the main application menu at the same time, making the game pretty unusable for non-English speakers. * Doesn't force the existance of an .atomix directory in the users' home directories, although it will still work if the users want and have one. * General code improvements. 2003-12-03: Released version 1.0 * Build fixes (Gtk+ & ranlib) * New and updated translations: Christophe Merlet (fr), Stanislav Brabec (cs), Fatih Demir (ta), Dmitry G. Mastrukov (be), Pablo Saratxaga (wa), Naba Kumar (hi), Tatiana Gutierrez Bunster (es), Daniel Yacob (am), Roozbeh Pournader (fa), Laurent Dhima (sq), Metin Amiroff (az), Gil "Dolfin" Osher (he), Danilo Å egan (sr, sr@Latn), Alessio Frusciante (it), Abel Cheung (ta),Vincent van Adrighem (nl), Andras Timar (hu), Álvaro Peña González (es), Young nskystars-goo (ko). 2002-07-23: Released version 0.9.4 * installable in different prefix than rest of gnome * .desktop clean ups * score fixes * nice logo at startup 2002-05-17: Released version 0.9.3 * more levels (19 now) * concurrent mouse and keyboard steering * no more deprecated Gnome2 API calls * (a lot!) translation updates 2002-02-17: Released version 0.9.2 2001-12-10: Released version 0.9.1 * time counting * score counting and saving * arrows showing the possible movements of selected atoms * improved undo functionality * splash screen * about dialog * more shortcuts * code cleanup * translations work now * more/updated translations * bug fixes 2001-11-27: Released version 0.9.0. * initial GNOME 2.0 port release atomix-2.14.0/acconfig.h0000644000175000017500000000036607462264473011765 00000000000000#undef ENABLE_NLS #undef HAVE_CATGETS #undef HAVE_GETTEXT #undef HAVE_LC_MESSAGES #undef HAVE_STPCPY #undef HAVE_LIBSM #undef PACKAGE_LOCALE_DIR #undef PACKAGE_DATA_DIR #undef PACKAGE_SOURCE_DIR #undef GETTEXT_PACKAGE #undef EXTRA_WARNING_CFLAGS atomix-2.14.0/depcomp0000755000175000017500000003710010404437654011405 00000000000000#! /bin/sh # depcomp - compile a program generating dependencies as side-effects scriptversion=2005-07-09.11 # Copyright (C) 1999, 2000, 2003, 2004, 2005 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 2, 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, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA # 02110-1301, USA. # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. # Originally written by Alexandre Oliva . case $1 in '') echo "$0: No command. Try \`$0 --help' for more information." 1>&2 exit 1; ;; -h | --h*) cat <<\EOF Usage: depcomp [--help] [--version] PROGRAM [ARGS] Run PROGRAMS ARGS to compile a file, generating dependencies as side-effects. Environment variables: depmode Dependency tracking mode. source Source file read by `PROGRAMS ARGS'. object Object file output by `PROGRAMS ARGS'. DEPDIR directory where to store dependencies. depfile Dependency file to output. tmpdepfile Temporary file to use when outputing dependencies. libtool Whether libtool is used (yes/no). Report bugs to . EOF exit $? ;; -v | --v*) echo "depcomp $scriptversion" exit $? ;; esac if test -z "$depmode" || test -z "$source" || test -z "$object"; then echo "depcomp: Variables source, object and depmode must be set" 1>&2 exit 1 fi # Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po. depfile=${depfile-`echo "$object" | sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`} tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`} rm -f "$tmpdepfile" # Some modes work just like other modes, but use different flags. We # parameterize here, but still list the modes in the big case below, # to make depend.m4 easier to write. Note that we *cannot* use a case # here, because this file can only contain one case statement. if test "$depmode" = hp; then # HP compiler uses -M and no extra arg. gccflag=-M depmode=gcc fi if test "$depmode" = dashXmstdout; then # This is just like dashmstdout with a different argument. dashmflag=-xM depmode=dashmstdout fi case "$depmode" in gcc3) ## gcc 3 implements dependency tracking that does exactly what ## we want. Yay! Note: for some reason libtool 1.4 doesn't like ## it if -MD -MP comes after the -MF stuff. Hmm. "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile" exit $stat fi mv "$tmpdepfile" "$depfile" ;; gcc) ## There are various ways to get dependency output from gcc. Here's ## why we pick this rather obscure method: ## - Don't want to use -MD because we'd like the dependencies to end ## up in a subdir. Having to rename by hand is ugly. ## (We might end up doing this anyway to support other compilers.) ## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like ## -MM, not -M (despite what the docs say). ## - Using -M directly means running the compiler twice (even worse ## than renaming). if test -z "$gccflag"; then gccflag=-MD, fi "$@" -Wp,"$gccflag$tmpdepfile" stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" echo "$object : \\" > "$depfile" alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz ## The second -e expression handles DOS-style file names with drive letters. sed -e 's/^[^:]*: / /' \ -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile" ## This next piece of magic avoids the `deleted header file' problem. ## The problem is that when a header file which appears in a .P file ## is deleted, the dependency causes make to die (because there is ## typically no way to rebuild the header). We avoid this by adding ## dummy dependencies for each header file. Too bad gcc doesn't do ## this for us directly. tr ' ' ' ' < "$tmpdepfile" | ## Some versions of gcc put a space before the `:'. On the theory ## that the space means something, we add a space to the output as ## well. ## Some versions of the HPUX 10.20 sed can't process this invocation ## correctly. Breaking it into two sed invocations is a workaround. sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; hp) # This case exists only to let depend.m4 do its work. It works by # looking at the text of this script. This case will never be run, # since it is checked for above. exit 1 ;; sgi) if test "$libtool" = yes; then "$@" "-Wp,-MDupdate,$tmpdepfile" else "$@" -MDupdate "$tmpdepfile" fi stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files echo "$object : \\" > "$depfile" # Clip off the initial element (the dependent). Don't try to be # clever and replace this with sed code, as IRIX sed won't handle # lines with more than a fixed number of characters (4096 in # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines; # the IRIX cc adds comments like `#:fec' to the end of the # dependency line. tr ' ' ' ' < "$tmpdepfile" \ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \ tr ' ' ' ' >> $depfile echo >> $depfile # The second pass generates a dummy entry for each header file. tr ' ' ' ' < "$tmpdepfile" \ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \ >> $depfile else # The sourcefile does not contain any dependencies, so just # store a dummy comment line, to avoid errors with the Makefile # "include basename.Plo" scheme. echo "#dummy" > "$depfile" fi rm -f "$tmpdepfile" ;; aix) # The C for AIX Compiler uses -M and outputs the dependencies # in a .u file. In older versions, this file always lives in the # current directory. Also, the AIX compiler puts `$object:' at the # start of each line; $object doesn't have directory information. # Version 6 uses the directory in both cases. stripped=`echo "$object" | sed 's/\(.*\)\..*$/\1/'` tmpdepfile="$stripped.u" if test "$libtool" = yes; then "$@" -Wc,-M else "$@" -M fi stat=$? if test -f "$tmpdepfile"; then : else stripped=`echo "$stripped" | sed 's,^.*/,,'` tmpdepfile="$stripped.u" fi if test $stat -eq 0; then : else rm -f "$tmpdepfile" exit $stat fi if test -f "$tmpdepfile"; then outname="$stripped.o" # Each line is of the form `foo.o: dependent.h'. # Do two passes, one to just change these to # `$object: dependent.h' and one to simply `dependent.h:'. sed -e "s,^$outname:,$object :," < "$tmpdepfile" > "$depfile" sed -e "s,^$outname: \(.*\)$,\1:," < "$tmpdepfile" >> "$depfile" else # The sourcefile does not contain any dependencies, so just # store a dummy comment line, to avoid errors with the Makefile # "include basename.Plo" scheme. echo "#dummy" > "$depfile" fi rm -f "$tmpdepfile" ;; icc) # Intel's C compiler understands `-MD -MF file'. However on # icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c # ICC 7.0 will fill foo.d with something like # foo.o: sub/foo.c # foo.o: sub/foo.h # which is wrong. We want: # sub/foo.o: sub/foo.c # sub/foo.o: sub/foo.h # sub/foo.c: # sub/foo.h: # ICC 7.1 will output # foo.o: sub/foo.c sub/foo.h # and will wrap long lines using \ : # foo.o: sub/foo.c ... \ # sub/foo.h ... \ # ... "$@" -MD -MF "$tmpdepfile" stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" # Each line is of the form `foo.o: dependent.h', # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'. # Do two passes, one to just change these to # `$object: dependent.h' and one to simply `dependent.h:'. sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile" # Some versions of the HPUX 10.20 sed can't process this invocation # correctly. Breaking it into two sed invocations is a workaround. sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; tru64) # The Tru64 compiler uses -MD to generate dependencies as a side # effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'. # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put # dependencies in `foo.d' instead, so we check for that too. # Subdirectories are respected. dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` test "x$dir" = "x$object" && dir= base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` if test "$libtool" = yes; then # With Tru64 cc, shared objects can also be used to make a # static library. This mecanism is used in libtool 1.4 series to # handle both shared and static libraries in a single compilation. # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d. # # With libtool 1.5 this exception was removed, and libtool now # generates 2 separate objects for the 2 libraries. These two # compilations output dependencies in in $dir.libs/$base.o.d and # in $dir$base.o.d. We have to check for both files, because # one of the two compilations can be disabled. We should prefer # $dir$base.o.d over $dir.libs/$base.o.d because the latter is # automatically cleaned when .libs/ is deleted, while ignoring # the former would cause a distcleancheck panic. tmpdepfile1=$dir.libs/$base.lo.d # libtool 1.4 tmpdepfile2=$dir$base.o.d # libtool 1.5 tmpdepfile3=$dir.libs/$base.o.d # libtool 1.5 tmpdepfile4=$dir.libs/$base.d # Compaq CCC V6.2-504 "$@" -Wc,-MD else tmpdepfile1=$dir$base.o.d tmpdepfile2=$dir$base.d tmpdepfile3=$dir$base.d tmpdepfile4=$dir$base.d "$@" -MD fi stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4" exit $stat fi for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4" do test -f "$tmpdepfile" && break done if test -f "$tmpdepfile"; then sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile" # That's a tab and a space in the []. sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" else echo "#dummy" > "$depfile" fi rm -f "$tmpdepfile" ;; #nosideeffect) # This comment above is used by automake to tell side-effect # dependency tracking mechanisms from slower ones. dashmstdout) # Important note: in order to support this mode, a compiler *must* # always write the preprocessed file to stdout, regardless of -o. "$@" || exit $? # Remove the call to Libtool. if test "$libtool" = yes; then while test $1 != '--mode=compile'; do shift done shift fi # Remove `-o $object'. IFS=" " for arg do case $arg in -o) shift ;; $object) shift ;; *) set fnord "$@" "$arg" shift # fnord shift # $arg ;; esac done test -z "$dashmflag" && dashmflag=-M # Require at least two characters before searching for `:' # in the target name. This is to cope with DOS-style filenames: # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise. "$@" $dashmflag | sed 's:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile" rm -f "$depfile" cat < "$tmpdepfile" > "$depfile" tr ' ' ' ' < "$tmpdepfile" | \ ## Some versions of the HPUX 10.20 sed can't process this invocation ## correctly. Breaking it into two sed invocations is a workaround. sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; dashXmstdout) # This case only exists to satisfy depend.m4. It is never actually # run, as this mode is specially recognized in the preamble. exit 1 ;; makedepend) "$@" || exit $? # Remove any Libtool call if test "$libtool" = yes; then while test $1 != '--mode=compile'; do shift done shift fi # X makedepend shift cleared=no for arg in "$@"; do case $cleared in no) set ""; shift cleared=yes ;; esac case "$arg" in -D*|-I*) set fnord "$@" "$arg"; shift ;; # Strip any option that makedepend may not understand. Remove # the object too, otherwise makedepend will parse it as a source file. -*|$object) ;; *) set fnord "$@" "$arg"; shift ;; esac done obj_suffix="`echo $object | sed 's/^.*\././'`" touch "$tmpdepfile" ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@" rm -f "$depfile" cat < "$tmpdepfile" > "$depfile" sed '1,2d' "$tmpdepfile" | tr ' ' ' ' | \ ## Some versions of the HPUX 10.20 sed can't process this invocation ## correctly. Breaking it into two sed invocations is a workaround. sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" "$tmpdepfile".bak ;; cpp) # Important note: in order to support this mode, a compiler *must* # always write the preprocessed file to stdout. "$@" || exit $? # Remove the call to Libtool. if test "$libtool" = yes; then while test $1 != '--mode=compile'; do shift done shift fi # Remove `-o $object'. IFS=" " for arg do case $arg in -o) shift ;; $object) shift ;; *) set fnord "$@" "$arg" shift # fnord shift # $arg ;; esac done "$@" -E | sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \ -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' | sed '$ s: \\$::' > "$tmpdepfile" rm -f "$depfile" echo "$object : \\" > "$depfile" cat < "$tmpdepfile" >> "$depfile" sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; msvisualcpp) # Important note: in order to support this mode, a compiler *must* # always write the preprocessed file to stdout, regardless of -o, # because we must use -o when running libtool. "$@" || exit $? IFS=" " for arg do case "$arg" in "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI") set fnord "$@" shift shift ;; *) set fnord "$@" "$arg" shift shift ;; esac done "$@" -E | sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile" rm -f "$depfile" echo "$object : \\" > "$depfile" . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile" echo " " >> "$depfile" . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile" rm -f "$tmpdepfile" ;; none) exec "$@" ;; *) echo "Unknown depmode $depmode" 1>&2 exit 1 ;; esac exit 0 # Local Variables: # mode: shell-script # sh-indentation: 2 # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-end: "$" # End: atomix-2.14.0/install-sh0000755000175000017500000002202110404437653012027 00000000000000#!/bin/sh # install - install a program, script, or datafile scriptversion=2005-05-14.22 # This originates from X11R5 (mit/util/scripts/install.sh), which was # later released in X11R6 (xc/config/util/install.sh) with the # following copyright and license. # # Copyright (C) 1994 X Consortium # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to # deal in the Software without restriction, including without limitation the # rights to use, copy, modify, merge, publish, distribute, sublicense, and/or # sell copies of the Software, and to permit persons to whom the Software is # furnished to do so, subject to the following conditions: # # The above copyright notice and this permission notice shall be included in # all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE # X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN # AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC- # TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # # Except as contained in this notice, the name of the X Consortium shall not # be used in advertising or otherwise to promote the sale, use or other deal- # ings in this Software without prior written authorization from the X Consor- # tium. # # # FSF changes to this file are in the public domain. # # Calling this script install-sh is preferred over install.sh, to prevent # `make' implicit rules from creating a file called install from it # when there is no Makefile. # # This script is compatible with the BSD install script, but was written # from scratch. It can only install one file at a time, a restriction # shared with many OS's install programs. # set DOITPROG to echo to test this script # Don't use :- since 4.3BSD and earlier shells don't like it. doit="${DOITPROG-}" # put in absolute paths if you don't have them in your path; or use env. vars. mvprog="${MVPROG-mv}" cpprog="${CPPROG-cp}" chmodprog="${CHMODPROG-chmod}" chownprog="${CHOWNPROG-chown}" chgrpprog="${CHGRPPROG-chgrp}" stripprog="${STRIPPROG-strip}" rmprog="${RMPROG-rm}" mkdirprog="${MKDIRPROG-mkdir}" chmodcmd="$chmodprog 0755" chowncmd= chgrpcmd= stripcmd= rmcmd="$rmprog -f" mvcmd="$mvprog" src= dst= dir_arg= dstarg= no_target_directory= usage="Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE or: $0 [OPTION]... SRCFILES... DIRECTORY or: $0 [OPTION]... -t DIRECTORY SRCFILES... or: $0 [OPTION]... -d DIRECTORIES... In the 1st form, copy SRCFILE to DSTFILE. In the 2nd and 3rd, copy all SRCFILES to DIRECTORY. In the 4th, create DIRECTORIES. Options: -c (ignored) -d create directories instead of installing files. -g GROUP $chgrpprog installed files to GROUP. -m MODE $chmodprog installed files to MODE. -o USER $chownprog installed files to USER. -s $stripprog installed files. -t DIRECTORY install into DIRECTORY. -T report an error if DSTFILE is a directory. --help display this help and exit. --version display version info and exit. Environment variables override the default commands: CHGRPPROG CHMODPROG CHOWNPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG " while test -n "$1"; do case $1 in -c) shift continue;; -d) dir_arg=true shift continue;; -g) chgrpcmd="$chgrpprog $2" shift shift continue;; --help) echo "$usage"; exit $?;; -m) chmodcmd="$chmodprog $2" shift shift continue;; -o) chowncmd="$chownprog $2" shift shift continue;; -s) stripcmd=$stripprog shift continue;; -t) dstarg=$2 shift shift continue;; -T) no_target_directory=true shift continue;; --version) echo "$0 $scriptversion"; exit $?;; *) # When -d is used, all remaining arguments are directories to create. # When -t is used, the destination is already specified. test -n "$dir_arg$dstarg" && break # Otherwise, the last argument is the destination. Remove it from $@. for arg do if test -n "$dstarg"; then # $@ is not empty: it contains at least $arg. set fnord "$@" "$dstarg" shift # fnord fi shift # arg dstarg=$arg done break;; esac done if test -z "$1"; then if test -z "$dir_arg"; then echo "$0: no input file specified." >&2 exit 1 fi # It's OK to call `install-sh -d' without argument. # This can happen when creating conditional directories. exit 0 fi for src do # Protect names starting with `-'. case $src in -*) src=./$src ;; esac if test -n "$dir_arg"; then dst=$src src= if test -d "$dst"; then mkdircmd=: chmodcmd= else mkdircmd=$mkdirprog fi else # Waiting for this to be detected by the "$cpprog $src $dsttmp" command # might cause directories to be created, which would be especially bad # if $src (and thus $dsttmp) contains '*'. if test ! -f "$src" && test ! -d "$src"; then echo "$0: $src does not exist." >&2 exit 1 fi if test -z "$dstarg"; then echo "$0: no destination specified." >&2 exit 1 fi dst=$dstarg # Protect names starting with `-'. case $dst in -*) dst=./$dst ;; esac # If destination is a directory, append the input filename; won't work # if double slashes aren't ignored. if test -d "$dst"; then if test -n "$no_target_directory"; then echo "$0: $dstarg: Is a directory" >&2 exit 1 fi dst=$dst/`basename "$src"` fi fi # This sed command emulates the dirname command. dstdir=`echo "$dst" | sed -e 's,/*$,,;s,[^/]*$,,;s,/*$,,;s,^$,.,'` # Make sure that the destination directory exists. # Skip lots of stat calls in the usual case. if test ! -d "$dstdir"; then defaultIFS=' ' IFS="${IFS-$defaultIFS}" oIFS=$IFS # Some sh's can't handle IFS=/ for some reason. IFS='%' set x `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'` shift IFS=$oIFS pathcomp= while test $# -ne 0 ; do pathcomp=$pathcomp$1 shift if test ! -d "$pathcomp"; then $mkdirprog "$pathcomp" # mkdir can fail with a `File exist' error in case several # install-sh are creating the directory concurrently. This # is OK. test -d "$pathcomp" || exit fi pathcomp=$pathcomp/ done fi if test -n "$dir_arg"; then $doit $mkdircmd "$dst" \ && { test -z "$chowncmd" || $doit $chowncmd "$dst"; } \ && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } \ && { test -z "$stripcmd" || $doit $stripcmd "$dst"; } \ && { test -z "$chmodcmd" || $doit $chmodcmd "$dst"; } else dstfile=`basename "$dst"` # Make a couple of temp file names in the proper directory. dsttmp=$dstdir/_inst.$$_ rmtmp=$dstdir/_rm.$$_ # Trap to clean up those temp files at exit. trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0 trap '(exit $?); exit' 1 2 13 15 # Copy the file name to the temp name. $doit $cpprog "$src" "$dsttmp" && # and set any options; do chmod last to preserve setuid bits. # # If any of these fail, we abort the whole thing. If we want to # ignore errors from any of these, just make sure not to ignore # errors from the above "$doit $cpprog $src $dsttmp" command. # { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } \ && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } \ && { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } \ && { test -z "$chmodcmd" || $doit $chmodcmd "$dsttmp"; } && # Now rename the file to the real destination. { $doit $mvcmd -f "$dsttmp" "$dstdir/$dstfile" 2>/dev/null \ || { # The rename failed, perhaps because mv can't rename something else # to itself, or perhaps because mv is so ancient that it does not # support -f. # Now remove or move aside any old file at destination location. # We try this two ways since rm can't unlink itself on some # systems and the destination file might be busy for other # reasons. In this case, the final cleanup might fail but the new # file should still install successfully. { if test -f "$dstdir/$dstfile"; then $doit $rmcmd -f "$dstdir/$dstfile" 2>/dev/null \ || $doit $mvcmd -f "$dstdir/$dstfile" "$rmtmp" 2>/dev/null \ || { echo "$0: cannot unlink or rename $dstdir/$dstfile" >&2 (exit 1); exit 1 } else : fi } && # Now rename the file to the real destination. $doit $mvcmd "$dsttmp" "$dstdir/$dstfile" } } fi || { (exit 1); exit 1; } done # The final little trick to "correctly" pass the exit status to the exit trap. { (exit 0); exit 0 } # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-end: "$" # End: atomix-2.14.0/missing0000755000175000017500000002540610404437653011434 00000000000000#! /bin/sh # Common stub for a few missing GNU programs while installing. scriptversion=2005-06-08.21 # Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005 # Free Software Foundation, Inc. # Originally by Fran,cois Pinard , 1996. # 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 2, 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, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA # 02110-1301, USA. # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. if test $# -eq 0; then echo 1>&2 "Try \`$0 --help' for more information" exit 1 fi run=: # In the cases where this matters, `missing' is being run in the # srcdir already. if test -f configure.ac; then configure_ac=configure.ac else configure_ac=configure.in fi msg="missing on your system" case "$1" in --run) # Try to run requested program, and just exit if it succeeds. run= shift "$@" && exit 0 # Exit code 63 means version mismatch. This often happens # when the user try to use an ancient version of a tool on # a file that requires a minimum version. In this case we # we should proceed has if the program had been absent, or # if --run hadn't been passed. if test $? = 63; then run=: msg="probably too old" fi ;; -h|--h|--he|--hel|--help) echo "\ $0 [OPTION]... PROGRAM [ARGUMENT]... Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an error status if there is no known handling for PROGRAM. Options: -h, --help display this help and exit -v, --version output version information and exit --run try to run the given command, and emulate it if it fails Supported PROGRAM values: aclocal touch file \`aclocal.m4' autoconf touch file \`configure' autoheader touch file \`config.h.in' automake touch all \`Makefile.in' files bison create \`y.tab.[ch]', if possible, from existing .[ch] flex create \`lex.yy.c', if possible, from existing .c help2man touch the output file lex create \`lex.yy.c', if possible, from existing .c makeinfo touch the output file tar try tar, gnutar, gtar, then tar without non-portable flags yacc create \`y.tab.[ch]', if possible, from existing .[ch] Send bug reports to ." exit $? ;; -v|--v|--ve|--ver|--vers|--versi|--versio|--version) echo "missing $scriptversion (GNU Automake)" exit $? ;; -*) echo 1>&2 "$0: Unknown \`$1' option" echo 1>&2 "Try \`$0 --help' for more information" exit 1 ;; esac # Now exit if we have it, but it failed. Also exit now if we # don't have it and --version was passed (most likely to detect # the program). case "$1" in lex|yacc) # Not GNU programs, they don't have --version. ;; tar) if test -n "$run"; then echo 1>&2 "ERROR: \`tar' requires --run" exit 1 elif test "x$2" = "x--version" || test "x$2" = "x--help"; then exit 1 fi ;; *) if test -z "$run" && ($1 --version) > /dev/null 2>&1; then # We have it, but it failed. exit 1 elif test "x$2" = "x--version" || test "x$2" = "x--help"; then # Could not run --version or --help. This is probably someone # running `$TOOL --version' or `$TOOL --help' to check whether # $TOOL exists and not knowing $TOOL uses missing. exit 1 fi ;; esac # If it does not exist, or fails to run (possibly an outdated version), # try to emulate it. case "$1" in aclocal*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified \`acinclude.m4' or \`${configure_ac}'. You might want to install the \`Automake' and \`Perl' packages. Grab them from any GNU archive site." touch aclocal.m4 ;; autoconf) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified \`${configure_ac}'. You might want to install the \`Autoconf' and \`GNU m4' packages. Grab them from any GNU archive site." touch configure ;; autoheader) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified \`acconfig.h' or \`${configure_ac}'. You might want to install the \`Autoconf' and \`GNU m4' packages. Grab them from any GNU archive site." files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}` test -z "$files" && files="config.h" touch_files= for f in $files; do case "$f" in *:*) touch_files="$touch_files "`echo "$f" | sed -e 's/^[^:]*://' -e 's/:.*//'`;; *) touch_files="$touch_files $f.in";; esac done touch $touch_files ;; automake*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'. You might want to install the \`Automake' and \`Perl' packages. Grab them from any GNU archive site." find . -type f -name Makefile.am -print | sed 's/\.am$/.in/' | while read f; do touch "$f"; done ;; autom4te) echo 1>&2 "\ WARNING: \`$1' is needed, but is $msg. You might have modified some files without having the proper tools for further handling them. You can get \`$1' as part of \`Autoconf' from any GNU archive site." file=`echo "$*" | sed -n 's/.*--output[ =]*\([^ ]*\).*/\1/p'` test -z "$file" && file=`echo "$*" | sed -n 's/.*-o[ ]*\([^ ]*\).*/\1/p'` if test -f "$file"; then touch $file else test -z "$file" || exec >$file echo "#! /bin/sh" echo "# Created by GNU Automake missing as a replacement of" echo "# $ $@" echo "exit 0" chmod +x $file exit 1 fi ;; bison|yacc) echo 1>&2 "\ WARNING: \`$1' $msg. You should only need it if you modified a \`.y' file. You may need the \`Bison' package in order for those modifications to take effect. You can get \`Bison' from any GNU archive site." rm -f y.tab.c y.tab.h if [ $# -ne 1 ]; then eval LASTARG="\${$#}" case "$LASTARG" in *.y) SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'` if [ -f "$SRCFILE" ]; then cp "$SRCFILE" y.tab.c fi SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'` if [ -f "$SRCFILE" ]; then cp "$SRCFILE" y.tab.h fi ;; esac fi if [ ! -f y.tab.h ]; then echo >y.tab.h fi if [ ! -f y.tab.c ]; then echo 'main() { return 0; }' >y.tab.c fi ;; lex|flex) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified a \`.l' file. You may need the \`Flex' package in order for those modifications to take effect. You can get \`Flex' from any GNU archive site." rm -f lex.yy.c if [ $# -ne 1 ]; then eval LASTARG="\${$#}" case "$LASTARG" in *.l) SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'` if [ -f "$SRCFILE" ]; then cp "$SRCFILE" lex.yy.c fi ;; esac fi if [ ! -f lex.yy.c ]; then echo 'main() { return 0; }' >lex.yy.c fi ;; help2man) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified a dependency of a manual page. You may need the \`Help2man' package in order for those modifications to take effect. You can get \`Help2man' from any GNU archive site." file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'` if test -z "$file"; then file=`echo "$*" | sed -n 's/.*--output=\([^ ]*\).*/\1/p'` fi if [ -f "$file" ]; then touch $file else test -z "$file" || exec >$file echo ".ab help2man is required to generate this page" exit 1 fi ;; makeinfo) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified a \`.texi' or \`.texinfo' file, or any other file indirectly affecting the aspect of the manual. The spurious call might also be the consequence of using a buggy \`make' (AIX, DU, IRIX). You might want to install the \`Texinfo' package or the \`GNU make' package. Grab either from any GNU archive site." # The file to touch is that specified with -o ... file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'` if test -z "$file"; then # ... or it is the one specified with @setfilename ... infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'` file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $infile` # ... or it is derived from the source name (dir/f.texi becomes f.info) test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info fi # If the file does not exist, the user really needs makeinfo; # let's fail without touching anything. test -f $file || exit 1 touch $file ;; tar) shift # We have already tried tar in the generic part. # Look for gnutar/gtar before invocation to avoid ugly error # messages. if (gnutar --version > /dev/null 2>&1); then gnutar "$@" && exit 0 fi if (gtar --version > /dev/null 2>&1); then gtar "$@" && exit 0 fi firstarg="$1" if shift; then case "$firstarg" in *o*) firstarg=`echo "$firstarg" | sed s/o//` tar "$firstarg" "$@" && exit 0 ;; esac case "$firstarg" in *h*) firstarg=`echo "$firstarg" | sed s/h//` tar "$firstarg" "$@" && exit 0 ;; esac fi echo 1>&2 "\ WARNING: I can't seem to be able to run \`tar' with the given arguments. You may want to install GNU tar or Free paxutils, or check the command line arguments." exit 1 ;; *) echo 1>&2 "\ WARNING: \`$1' is needed, and is $msg. You might have modified some files without having the proper tools for further handling them. Check the \`README' file, it often tells you about the needed prerequisites for installing this package. You may also peek at any GNU archive site, in case some other package would contain this missing \`$1' program." exit 1 ;; esac exit 0 # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-end: "$" # End: atomix-2.14.0/mkinstalldirs0000755000175000017500000000662210404437655012644 00000000000000#! /bin/sh # mkinstalldirs --- make directory hierarchy scriptversion=2005-06-29.22 # Original author: Noah Friedman # Created: 1993-05-16 # Public domain. # # This file is maintained in Automake, please report # bugs to or send patches to # . errstatus=0 dirmode= usage="\ Usage: mkinstalldirs [-h] [--help] [--version] [-m MODE] DIR ... Create each directory DIR (with mode MODE, if specified), including all leading file name components. Report bugs to ." # process command line arguments while test $# -gt 0 ; do case $1 in -h | --help | --h*) # -h for help echo "$usage" exit $? ;; -m) # -m PERM arg shift test $# -eq 0 && { echo "$usage" 1>&2; exit 1; } dirmode=$1 shift ;; --version) echo "$0 $scriptversion" exit $? ;; --) # stop option processing shift break ;; -*) # unknown option echo "$usage" 1>&2 exit 1 ;; *) # first non-opt arg break ;; esac done for file do if test -d "$file"; then shift else break fi done case $# in 0) exit 0 ;; esac # Solaris 8's mkdir -p isn't thread-safe. If you mkdir -p a/b and # mkdir -p a/c at the same time, both will detect that a is missing, # one will create a, then the other will try to create a and die with # a "File exists" error. This is a problem when calling mkinstalldirs # from a parallel make. We use --version in the probe to restrict # ourselves to GNU mkdir, which is thread-safe. case $dirmode in '') if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then echo "mkdir -p -- $*" exec mkdir -p -- "$@" else # On NextStep and OpenStep, the `mkdir' command does not # recognize any option. It will interpret all options as # directories to create, and then abort because `.' already # exists. test -d ./-p && rmdir ./-p test -d ./--version && rmdir ./--version fi ;; *) if mkdir -m "$dirmode" -p --version . >/dev/null 2>&1 && test ! -d ./--version; then echo "mkdir -m $dirmode -p -- $*" exec mkdir -m "$dirmode" -p -- "$@" else # Clean up after NextStep and OpenStep mkdir. for d in ./-m ./-p ./--version "./$dirmode"; do test -d $d && rmdir $d done fi ;; esac for file do case $file in /*) pathcomp=/ ;; *) pathcomp= ;; esac oIFS=$IFS IFS=/ set fnord $file shift IFS=$oIFS for d do test "x$d" = x && continue pathcomp=$pathcomp$d case $pathcomp in -*) pathcomp=./$pathcomp ;; esac if test ! -d "$pathcomp"; then echo "mkdir $pathcomp" mkdir "$pathcomp" || lasterr=$? if test ! -d "$pathcomp"; then errstatus=$lasterr else if test ! -z "$dirmode"; then echo "chmod $dirmode $pathcomp" lasterr= chmod "$dirmode" "$pathcomp" || lasterr=$? if test ! -z "$lasterr"; then errstatus=$lasterr fi fi fi fi pathcomp=$pathcomp/ done done exit $errstatus # Local Variables: # mode: shell-script # sh-indentation: 2 # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-end: "$" # End: atomix-2.14.0/intltool-extract.in0000644000175000017500000005373510404437641013704 00000000000000#!@INTLTOOL_PERL@ -w # -*- Mode: perl; indent-tabs-mode: nil; c-basic-offset: 4 -*- # # The Intltool Message Extractor # # Copyright (C) 2000-2001, 2003 Free Software Foundation. # # Intltool 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 2 of the # License, or (at your option) any later version. # # Intltool 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, write to the Free Software # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. # # Authors: Kenneth Christiansen # Darin Adler # ## Release information my $PROGRAM = "intltool-extract"; my $PACKAGE = "intltool"; my $VERSION = "0.34.2"; ## Loaded modules use strict; use File::Basename; use Getopt::Long; ## Scalars used by the option stuff my $TYPE_ARG = "0"; my $LOCAL_ARG = "0"; my $HELP_ARG = "0"; my $VERSION_ARG = "0"; my $UPDATE_ARG = "0"; my $QUIET_ARG = "0"; my $SRCDIR_ARG = "."; my $FILE; my $OUTFILE; my $gettext_type = ""; my $input; my %messages = (); my %loc = (); my %count = (); my %comments = (); my $strcount = 0; my $XMLCOMMENT = ""; ## Use this instead of \w for XML files to handle more possible characters. my $w = "[-A-Za-z0-9._:]"; ## Always print first $| = 1; ## Handle options GetOptions ( "type=s" => \$TYPE_ARG, "local|l" => \$LOCAL_ARG, "help|h" => \$HELP_ARG, "version|v" => \$VERSION_ARG, "update" => \$UPDATE_ARG, "quiet|q" => \$QUIET_ARG, "srcdir=s" => \$SRCDIR_ARG, ) or &error; &split_on_argument; ## Check for options. ## This section will check for the different options. sub split_on_argument { if ($VERSION_ARG) { &version; } elsif ($HELP_ARG) { &help; } elsif ($LOCAL_ARG) { &place_local; &extract; } elsif ($UPDATE_ARG) { &place_normal; &extract; } elsif (@ARGV > 0) { &place_normal; &message; &extract; } else { &help; } } sub place_normal { $FILE = $ARGV[0]; $OUTFILE = "$FILE.h"; } sub place_local { $FILE = $ARGV[0]; $OUTFILE = fileparse($FILE, ()); if (!-e "tmp/") { system("mkdir tmp/"); } $OUTFILE = "./tmp/$OUTFILE.h" } sub determine_type { if ($TYPE_ARG =~ /^gettext\/(.*)/) { $gettext_type=$1 } } ## Sub for printing release information sub version{ print <<_EOF_; ${PROGRAM} (${PACKAGE}) $VERSION Copyright (C) 2000, 2003 Free Software Foundation, Inc. Written by Kenneth Christiansen, 2000. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. _EOF_ exit; } ## Sub for printing usage information sub help { print <<_EOF_; Usage: ${PROGRAM} [OPTION]... [FILENAME] Generates a header file from an XML source file. It grabs all strings between <_translatable_node> and its end tag in XML files. Read manpage (man ${PROGRAM}) for more info. --type=TYPE Specify the file type of FILENAME. Currently supports: "gettext/glade", "gettext/ini", "gettext/keys" "gettext/rfc822deb", "gettext/schemas", "gettext/scheme", "gettext/xml" -l, --local Writes output into current working directory (conflicts with --update) --update Writes output into the same directory the source file reside (conflicts with --local) --srcdir Root of the source tree -v, --version Output version information and exit -h, --help Display this help and exit -q, --quiet Quiet mode Report bugs to http://bugzilla.gnome.org/ (product name "$PACKAGE") or send email to . _EOF_ exit; } ## Sub for printing error messages sub error{ print STDERR "Try `${PROGRAM} --help' for more information.\n"; exit; } sub message { print "Generating C format header file for translation.\n" unless $QUIET_ARG; } sub extract { &determine_type; &convert; open OUT, ">$OUTFILE"; binmode (OUT) if $^O eq 'MSWin32'; &msg_write; close OUT; print "Wrote $OUTFILE\n" unless $QUIET_ARG; } sub convert { ## Reading the file { local (*IN); local $/; #slurp mode open (IN, "<$SRCDIR_ARG/$FILE") || die "can't open $SRCDIR_ARG/$FILE: $!"; $input = ; } &type_ini if $gettext_type eq "ini"; &type_keys if $gettext_type eq "keys"; &type_xml if $gettext_type eq "xml"; &type_glade if $gettext_type eq "glade"; &type_scheme if $gettext_type eq "scheme"; &type_schemas if $gettext_type eq "schemas"; &type_rfc822deb if $gettext_type eq "rfc822deb"; } sub entity_decode_minimal { local ($_) = @_; s/'/'/g; # ' s/"/"/g; # " s/&/&/g; return $_; } sub entity_decode { local ($_) = @_; s/'/'/g; # ' s/"/"/g; # " s/&/&/g; s/<//g; return $_; } sub escape_char { return '\"' if $_ eq '"'; return '\n' if $_ eq "\n"; return '\\' if $_ eq '\\'; return $_; } sub escape { my ($string) = @_; return join "", map &escape_char, split //, $string; } sub type_ini { ### For generic translatable desktop files ### while ($input =~ /^_.*=(.*)$/mg) { $messages{$1} = []; } } sub type_keys { ### For generic translatable mime/keys files ### while ($input =~ /^\s*_\w+=(.*)$/mg) { $messages{$1} = []; } } sub type_xml { ### For generic translatable XML files ### my $tree = readXml($input); parseTree(0, $tree); } sub print_var { my $var = shift; my $vartype = ref $var; if ($vartype =~ /ARRAY/) { my @arr = @{$var}; print "[ "; foreach my $el (@arr) { print_var($el); print ", "; } print "] "; } elsif ($vartype =~ /HASH/) { my %hash = %{$var}; print "{ "; foreach my $key (keys %hash) { print "$key => "; print_var($hash{$key}); print ", "; } print "} "; } else { print $var; } } # Same syntax as getAttributeString in intltool-merge.in.in, similar logic (look for ## differences comment) sub getAttributeString { my $sub = shift; my $do_translate = shift || 1; my $language = shift || ""; my $translate = shift; my $result = ""; foreach my $e (reverse(sort(keys %{ $sub }))) { my $key = $e; my $string = $sub->{$e}; my $quote = '"'; $string =~ s/^[\s]+//; $string =~ s/[\s]+$//; if ($string =~ /^'.*'$/) { $quote = "'"; } $string =~ s/^['"]//g; $string =~ s/['"]$//g; ## differences from intltool-merge.in.in if ($key =~ /^_/) { $comments{entity_decode($string)} = $XMLCOMMENT if $XMLCOMMENT; $messages{entity_decode($string)} = []; $$translate = 2; } ## differences end here from intltool-merge.in.in $result .= " $key=$quote$string$quote"; } return $result; } # Verbatim copy from intltool-merge.in.in sub getXMLstring { my $ref = shift; my $spacepreserve = shift || 0; my @list = @{ $ref }; my $result = ""; my $count = scalar(@list); my $attrs = $list[0]; my $index = 1; $spacepreserve = 1 if ((exists $attrs->{"xml:space"}) && ($attrs->{"xml:space"} =~ /^["']?preserve["']?$/)); $spacepreserve = 0 if ((exists $attrs->{"xml:space"}) && ($attrs->{"xml:space"} =~ /^["']?default["']?$/)); while ($index < $count) { my $type = $list[$index]; my $content = $list[$index+1]; if (! $type ) { # We've got CDATA if ($content) { # lets strip the whitespace here, and *ONLY* here $content =~ s/\s+/ /gs if (!$spacepreserve); $result .= $content; } } elsif ( "$type" ne "1" ) { # We've got another element $result .= "<$type"; $result .= getAttributeString(@{$content}[0], 0); # no nested translatable elements if ($content) { my $subresult = getXMLstring($content, $spacepreserve); if ($subresult) { $result .= ">".$subresult . ""; } else { $result .= "/>"; } } else { $result .= "/>"; } } $index += 2; } return $result; } # Verbatim copy from intltool-merge.in.in, except for MULTIPLE_OUTPUT handling removed # Translate list of nodes if necessary sub translate_subnodes { my $fh = shift; my $content = shift; my $language = shift || ""; my $singlelang = shift || 0; my $spacepreserve = shift || 0; my @nodes = @{ $content }; my $count = scalar(@nodes); my $index = 0; while ($index < $count) { my $type = $nodes[$index]; my $rest = $nodes[$index+1]; traverse($fh, $type, $rest, $language, $spacepreserve); $index += 2; } } # Based on traverse() in intltool-merge.in.in sub traverse { my $fh = shift; # unused, to allow us to sync code between -merge and -extract my $nodename = shift; my $content = shift; my $language = shift || ""; my $spacepreserve = shift || 0; if ($nodename && "$nodename" eq "1") { $XMLCOMMENT = $content; } elsif ($nodename) { # element my @all = @{ $content }; my $attrs = shift @all; my $translate = 0; my $outattr = getAttributeString($attrs, 1, $language, \$translate); if ($nodename =~ /^_/) { $translate = 1; $nodename =~ s/^_//; } my $lookup = ''; $spacepreserve = 0 if ((exists $attrs->{"xml:space"}) && ($attrs->{"xml:space"} =~ /^["']?default["']?$/)); $spacepreserve = 1 if ((exists $attrs->{"xml:space"}) && ($attrs->{"xml:space"} =~ /^["']?preserve["']?$/)); if ($translate) { $lookup = getXMLstring($content, $spacepreserve); if (!$spacepreserve) { $lookup =~ s/^\s+//s; $lookup =~ s/\s+$//s; } if ($lookup && $translate != 2) { $comments{$lookup} = $XMLCOMMENT if $XMLCOMMENT; $messages{$lookup} = []; } elsif ($translate == 2) { translate_subnodes($fh, \@all, $language, 1, $spacepreserve); } } else { $XMLCOMMENT = ""; my $count = scalar(@all); if ($count > 0) { my $index = 0; while ($index < $count) { my $type = $all[$index]; my $rest = $all[$index+1]; traverse($fh, $type, $rest, $language, $spacepreserve); $index += 2; } } } $XMLCOMMENT = ""; } } # Verbatim copy from intltool-merge.in.in, $fh for compatibility sub parseTree { my $fh = shift; my $ref = shift; my $language = shift || ""; my $name = shift @{ $ref }; my $cont = shift @{ $ref }; while (!$name || "$name" eq "1") { $name = shift @{ $ref }; $cont = shift @{ $ref }; } my $spacepreserve = 0; my $attrs = @{$cont}[0]; $spacepreserve = 1 if ((exists $attrs->{"xml:space"}) && ($attrs->{"xml:space"} =~ /^["']?preserve["']?$/)); traverse($fh, $name, $cont, $language, $spacepreserve); } # Verbatim copy from intltool-merge.in.in sub intltool_tree_comment { my $expat = shift; my $data = $expat->original_string(); my $clist = $expat->{Curlist}; my $pos = $#$clist; $data =~ s/^$//s; push @$clist, 1 => $data; } # Verbatim copy from intltool-merge.in.in sub intltool_tree_cdatastart { my $expat = shift; my $clist = $expat->{Curlist}; my $pos = $#$clist; push @$clist, 0 => $expat->original_string(); } # Verbatim copy from intltool-merge.in.in sub intltool_tree_cdataend { my $expat = shift; my $clist = $expat->{Curlist}; my $pos = $#$clist; $clist->[$pos] .= $expat->original_string(); } # Verbatim copy from intltool-merge.in.in sub intltool_tree_char { my $expat = shift; my $text = shift; my $clist = $expat->{Curlist}; my $pos = $#$clist; # Use original_string so that we retain escaped entities # in CDATA sections. # if ($pos > 0 and $clist->[$pos - 1] eq '0') { $clist->[$pos] .= $expat->original_string(); } else { push @$clist, 0 => $expat->original_string(); } } # Verbatim copy from intltool-merge.in.in sub intltool_tree_start { my $expat = shift; my $tag = shift; my @origlist = (); # Use original_string so that we retain escaped entities # in attribute values. We must convert the string to an # @origlist array to conform to the structure of the Tree # Style. # my @original_array = split /\x/, $expat->original_string(); my $source = $expat->original_string(); # Remove leading tag. # $source =~ s|^\s*<\s*(\S+)||s; # Grab attribute key/value pairs and push onto @origlist array. # while ($source) { if ($source =~ /^\s*([\w:-]+)\s*[=]\s*["]/) { $source =~ s|^\s*([\w:-]+)\s*[=]\s*["]([^"]*)["]||s; push @origlist, $1; push @origlist, '"' . $2 . '"'; } elsif ($source =~ /^\s*([\w:-]+)\s*[=]\s*[']/) { $source =~ s|^\s*([\w:-]+)\s*[=]\s*[']([^']*)[']||s; push @origlist, $1; push @origlist, "'" . $2 . "'"; } else { last; } } my $ol = [ { @origlist } ]; push @{ $expat->{Lists} }, $expat->{Curlist}; push @{ $expat->{Curlist} }, $tag => $ol; $expat->{Curlist} = $ol; } # Copied from intltool-merge.in.in and added comment handler. sub readXml { my $xmldoc = shift || return; my $ret = eval 'require XML::Parser'; if(!$ret) { die "You must have XML::Parser installed to run $0\n\n"; } my $xp = new XML::Parser(Style => 'Tree'); $xp->setHandlers(Char => \&intltool_tree_char); $xp->setHandlers(Start => \&intltool_tree_start); $xp->setHandlers(CdataStart => \&intltool_tree_cdatastart); $xp->setHandlers(CdataEnd => \&intltool_tree_cdataend); ## differences from intltool-merge.in.in $xp->setHandlers(Comment => \&intltool_tree_comment); ## differences end here from intltool-merge.in.in my $tree = $xp->parse($xmldoc); #print_var($tree); # Hello thereHowdydo # would be: # [foo, [{}, 1, "comment", head, [{id => "a"}, 0, "Hello ", em, [{}, 0, "there"]], bar, # [{}, 0, "Howdy", ref, [{}]], 0, "do" ] ] return $tree; } sub type_schemas { ### For schemas XML files ### # FIXME: We should handle escaped < (less than) while ($input =~ / \s* (\s*(?:\s*)?(.*?)\s*<\/default>\s*)? (\s*(?:\s*)?(.*?)\s*<\/short>\s*)? (\s*(?:\s*)?(.*?)\s*<\/long>\s*)? <\/locale> /sgx) { my @totranslate = ($3,$6,$9); my @eachcomment = ($2,$5,$8); foreach (@totranslate) { my $currentcomment = shift @eachcomment; next if !$_; s/\s+/ /g; $messages{entity_decode_minimal($_)} = []; $comments{entity_decode_minimal($_)} = $currentcomment if (defined($currentcomment)); } } } sub type_rfc822deb { ### For rfc822-style Debian configuration files ### my $lineno = 1; my $type = ''; while ($input =~ /\G(.*?)(^|\n)(_+)([^:]+):[ \t]*(.*?)(?=\n\S|$)/sg) { my ($pre, $newline, $underscore, $tag, $text) = ($1, $2, $3, $4, $5); while ($pre =~ m/\n/g) { $lineno ++; } $lineno += length($newline); my @str_list = rfc822deb_split(length($underscore), $text); for my $str (@str_list) { $strcount++; $messages{$str} = []; $loc{$str} = $lineno; $count{$str} = $strcount; my $usercomment = ''; while($pre =~ s/(^|\n)#([^\n]*)$//s) { $usercomment = "\n" . $2 . $usercomment; } $comments{$str} = $tag . $usercomment; } $lineno += ($text =~ s/\n//g); } } sub rfc822deb_split { # Debian defines a special way to deal with rfc822-style files: # when a value contain newlines, it consists of # 1. a short form (first line) # 2. a long description, all lines begin with a space, # and paragraphs are separated by a single dot on a line # This routine returns an array of all paragraphs, and reformat # them. # When first argument is 2, the string is a comma separated list of # values. my $type = shift; my $text = shift; $text =~ s/^[ \t]//mg; return (split(/, */, $text, 0)) if $type ne 1; return ($text) if $text !~ /\n/; $text =~ s/([^\n]*)\n//; my @list = ($1); my $str = ''; for my $line (split (/\n/, $text)) { chomp $line; if ($line =~ /^\.\s*$/) { # New paragraph $str =~ s/\s*$//; push(@list, $str); $str = ''; } elsif ($line =~ /^\s/) { # Line which must not be reformatted $str .= "\n" if length ($str) && $str !~ /\n$/; $line =~ s/\s+$//; $str .= $line."\n"; } else { # Continuation line, remove newline $str .= " " if length ($str) && $str !~ /\n$/; $str .= $line; } } $str =~ s/\s*$//; push(@list, $str) if length ($str); return @list; } sub type_glade { ### For translatable Glade XML files ### my $tags = "label|title|text|format|copyright|comments|preview_text|tooltip|message"; while ($input =~ /<($tags)>([^<]+)<\/($tags)>/sg) { # Glade sometimes uses tags that normally mark translatable things for # little bits of non-translatable content. We work around this by not # translating strings that only includes something like label4 or window1. $messages{entity_decode($2)} = [] unless $2 =~ /^(window|label|dialog)[0-9]+$/; } while ($input =~ /(..[^<]*)<\/items>/sg) { for my $item (split (/\n/, $1)) { $messages{entity_decode($item)} = []; } } ## handle new glade files while ($input =~ /<(property|atkproperty)\s+[^>]*translatable\s*=\s*"yes"(?:\s+[^>]*comments\s*=\s*"([^"]*)")?[^>]*>([^<]+)<\/\1>/sg) { $messages{entity_decode($3)} = [] unless $3 =~ /^(window|label)[0-9]+$/; if (defined($2) and !($3 =~ /^(window|label)[0-9]+$/)) { $comments{entity_decode($3)} = entity_decode($2) ; } } while ($input =~ /]*)"\s+description="([^>]+)"\/>/sg) { $messages{entity_decode_minimal($2)} = []; } } sub type_scheme { my ($line, $i, $state, $str, $trcomment, $char); for $line (split(/\n/, $input)) { $i = 0; $state = 0; # 0 - nothing, 1 - string, 2 - translatable string while ($i < length($line)) { if (substr($line,$i,1) eq "\"") { if ($state == 2) { $comments{$str} = $trcomment if ($trcomment); $messages{$str} = []; $str = ''; $state = 0; $trcomment = ""; } elsif ($state == 1) { $str = ''; $state = 0; $trcomment = ""; } else { $state = 1; $str = ''; if ($i>0 && substr($line,$i-1,1) eq '_') { $state = 2; } } } elsif (!$state) { if (substr($line,$i,1) eq ";") { $trcomment = substr($line,$i+1); $trcomment =~ s/^;*\s*//; $i = length($line); } elsif ($trcomment && substr($line,$i,1) !~ /\s|\(|\)|_/) { $trcomment = ""; } } else { if (substr($line,$i,1) eq "\\") { $char = substr($line,$i+1,1); if ($char ne "\"" && $char ne "\\") { $str = $str . "\\"; } $i++; } $str = $str . substr($line,$i,1); } $i++; } } } sub msg_write { my @msgids; if (%count) { @msgids = sort { $count{$a} <=> $count{$b} } keys %count; } else { @msgids = sort keys %messages; } for my $message (@msgids) { my $offsetlines = 1; $offsetlines++ if $message =~ /%/; if (defined ($comments{$message})) { while ($comments{$message} =~ m/\n/g) { $offsetlines++; } } print OUT "# ".($loc{$message} - $offsetlines). " \"$FILE\"\n" if defined $loc{$message}; print OUT "/* ".$comments{$message}." */\n" if defined $comments{$message}; print OUT "/* xgettext:no-c-format */\n" if $message =~ /%/; my @lines = split (/\n/, $message, -1); for (my $n = 0; $n < @lines; $n++) { if ($n == 0) { print OUT "char *s = N_(\""; } else { print OUT " \""; } print OUT escape($lines[$n]); if ($n < @lines - 1) { print OUT "\\n\"\n"; } else { print OUT "\");\n"; } } } } atomix-2.14.0/intltool-merge.in0000644000175000017500000010463310404437641013323 00000000000000#!@INTLTOOL_PERL@ -w # -*- Mode: perl; indent-tabs-mode: nil; c-basic-offset: 4 -*- # # The Intltool Message Merger # # Copyright (C) 2000, 2003 Free Software Foundation. # Copyright (C) 2000, 2001 Eazel, Inc # # Intltool is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License # version 2 published by the Free Software Foundation. # # Intltool 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, write to the Free Software # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. # # Authors: Maciej Stachowiak # Kenneth Christiansen # Darin Adler # # Proper XML UTF-8'ification written by Cyrille Chepelov # ## Release information my $PROGRAM = "intltool-merge"; my $PACKAGE = "intltool"; my $VERSION = "0.34.2"; ## Loaded modules use strict; use Getopt::Long; use Text::Wrap; use File::Basename; my $must_end_tag = -1; my $last_depth = -1; my $translation_depth = -1; my @tag_stack = (); my @entered_tag = (); my @translation_strings = (); my $leading_space = ""; ## Scalars used by the option stuff my $HELP_ARG = 0; my $VERSION_ARG = 0; my $BA_STYLE_ARG = 0; my $XML_STYLE_ARG = 0; my $KEYS_STYLE_ARG = 0; my $DESKTOP_STYLE_ARG = 0; my $SCHEMAS_STYLE_ARG = 0; my $RFC822DEB_STYLE_ARG = 0; my $QUIET_ARG = 0; my $PASS_THROUGH_ARG = 0; my $UTF8_ARG = 0; my $MULTIPLE_OUTPUT = 0; my $cache_file; ## Handle options GetOptions ( "help" => \$HELP_ARG, "version" => \$VERSION_ARG, "quiet|q" => \$QUIET_ARG, "oaf-style|o" => \$BA_STYLE_ARG, ## for compatibility "ba-style|b" => \$BA_STYLE_ARG, "xml-style|x" => \$XML_STYLE_ARG, "keys-style|k" => \$KEYS_STYLE_ARG, "desktop-style|d" => \$DESKTOP_STYLE_ARG, "schemas-style|s" => \$SCHEMAS_STYLE_ARG, "rfc822deb-style|r" => \$RFC822DEB_STYLE_ARG, "pass-through|p" => \$PASS_THROUGH_ARG, "utf8|u" => \$UTF8_ARG, "multiple-output|m" => \$MULTIPLE_OUTPUT, "cache|c=s" => \$cache_file ) or &error; my $PO_DIR; my $FILE; my $OUTFILE; my %po_files_by_lang = (); my %translations = (); my $iconv = $ENV{"ICONV"} || $ENV{"INTLTOOL_ICONV"} || "@INTLTOOL_ICONV@"; my $devnull = ($^O eq 'MSWin32' ? 'NUL:' : '/dev/null'); # Use this instead of \w for XML files to handle more possible characters. my $w = "[-A-Za-z0-9._:]"; # XML quoted string contents my $q = "[^\\\"]*"; ## Check for options. if ($VERSION_ARG) { &print_version; } elsif ($HELP_ARG) { &print_help; } elsif ($BA_STYLE_ARG && @ARGV > 2) { &utf8_sanity_check; &preparation; &print_message; &ba_merge_translations; &finalize; } elsif ($XML_STYLE_ARG && @ARGV > 2) { &utf8_sanity_check; &preparation; &print_message; &xml_merge_output; &finalize; } elsif ($KEYS_STYLE_ARG && @ARGV > 2) { &utf8_sanity_check; &preparation; &print_message; &keys_merge_translations; &finalize; } elsif ($DESKTOP_STYLE_ARG && @ARGV > 2) { &utf8_sanity_check; &preparation; &print_message; &desktop_merge_translations; &finalize; } elsif ($SCHEMAS_STYLE_ARG && @ARGV > 2) { &utf8_sanity_check; &preparation; &print_message; &schemas_merge_translations; &finalize; } elsif ($RFC822DEB_STYLE_ARG && @ARGV > 2) { &preparation; &print_message; &rfc822deb_merge_translations; &finalize; } else { &print_help; } exit; ## Sub for printing release information sub print_version { print <<_EOF_; ${PROGRAM} (${PACKAGE}) ${VERSION} Written by Maciej Stachowiak, Darin Adler and Kenneth Christiansen. Copyright (C) 2000-2003 Free Software Foundation, Inc. Copyright (C) 2000-2001 Eazel, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. _EOF_ exit; } ## Sub for printing usage information sub print_help { print <<_EOF_; Usage: ${PROGRAM} [OPTION]... PO_DIRECTORY FILENAME OUTPUT_FILE Generates an output file that includes some localized attributes from an untranslated source file. Mandatory options: (exactly one must be specified) -b, --ba-style includes translations in the bonobo-activation style -d, --desktop-style includes translations in the desktop style -k, --keys-style includes translations in the keys style -s, --schemas-style includes translations in the schemas style -r, --rfc822deb-style includes translations in the RFC822 style -x, --xml-style includes translations in the standard xml style Other options: -u, --utf8 convert all strings to UTF-8 before merging (default for everything except RFC822 style) -p, --pass-through deprecated, does nothing and issues a warning -m, --multiple-output output one localized file per locale, instead of a single file containing all localized elements -c, --cache=FILE specify cache file name (usually \$top_builddir/po/.intltool-merge-cache) -q, --quiet suppress most messages --help display this help and exit --version output version information and exit Report bugs to http://bugzilla.gnome.org/ (product name "$PACKAGE") or send email to . _EOF_ exit; } ## Sub for printing error messages sub print_error { print STDERR "Try `${PROGRAM} --help' for more information.\n"; exit; } sub print_message { print "Merging translations into $OUTFILE.\n" unless $QUIET_ARG; } sub preparation { $PO_DIR = $ARGV[0]; $FILE = $ARGV[1]; $OUTFILE = $ARGV[2]; &gather_po_files; &get_translation_database; } # General-purpose code for looking up translations in .po files sub po_file2lang { my ($tmp) = @_; $tmp =~ s/^.*\/(.*)\.po$/$1/; return $tmp; } sub gather_po_files { for my $po_file (glob "$PO_DIR/*.po") { $po_files_by_lang{po_file2lang($po_file)} = $po_file; } } sub get_local_charset { my ($encoding) = @_; my $alias_file = $ENV{"G_CHARSET_ALIAS"} || "@INTLTOOL_LIBDIR@/charset.alias"; # seek character encoding aliases in charset.alias (glib) if (open CHARSET_ALIAS, $alias_file) { while () { next if /^\#/; return $1 if (/^\s*([-._a-zA-Z0-9]+)\s+$encoding\b/i) } close CHARSET_ALIAS; } # if not found, return input string return $encoding; } sub get_po_encoding { my ($in_po_file) = @_; my $encoding = ""; open IN_PO_FILE, $in_po_file or die; while () { ## example: "Content-Type: text/plain; charset=ISO-8859-1\n" if (/Content-Type\:.*charset=([-a-zA-Z0-9]+)\\n/) { $encoding = $1; last; } } close IN_PO_FILE; if (!$encoding) { print STDERR "Warning: no encoding found in $in_po_file. Assuming ISO-8859-1\n" unless $QUIET_ARG; $encoding = "ISO-8859-1"; } system ("$iconv -f $encoding -t UTF-8 <$devnull 2>$devnull"); if ($?) { $encoding = get_local_charset($encoding); } return $encoding } sub utf8_sanity_check { print STDERR "Warning: option --pass-through has been removed.\n" if $PASS_THROUGH_ARG; $UTF8_ARG = 1; } sub get_translation_database { if ($cache_file) { &get_cached_translation_database; } else { &create_translation_database; } } sub get_newest_po_age { my $newest_age; foreach my $file (values %po_files_by_lang) { my $file_age = -M $file; $newest_age = $file_age if !$newest_age || $file_age < $newest_age; } $newest_age = 0 if !$newest_age; return $newest_age; } sub create_cache { print "Generating and caching the translation database\n" unless $QUIET_ARG; &create_translation_database; open CACHE, ">$cache_file" || die; print CACHE join "\x01", %translations; close CACHE; } sub load_cache { print "Found cached translation database\n" unless $QUIET_ARG; my $contents; open CACHE, "<$cache_file" || die; { local $/; $contents = ; } close CACHE; %translations = split "\x01", $contents; } sub get_cached_translation_database { my $cache_file_age = -M $cache_file; if (defined $cache_file_age) { if ($cache_file_age <= &get_newest_po_age) { &load_cache; return; } print "Found too-old cached translation database\n" unless $QUIET_ARG; } &create_cache; } sub create_translation_database { for my $lang (keys %po_files_by_lang) { my $po_file = $po_files_by_lang{$lang}; if ($UTF8_ARG) { my $encoding = get_po_encoding ($po_file); if (lc $encoding eq "utf-8") { open PO_FILE, "<$po_file"; } else { print STDERR "WARNING: $po_file is not in UTF-8 but $encoding, converting...\n" unless $QUIET_ARG;; open PO_FILE, "$iconv -f $encoding -t UTF-8 $po_file|"; } } else { open PO_FILE, "<$po_file"; } my $nextfuzzy = 0; my $inmsgid = 0; my $inmsgstr = 0; my $msgid = ""; my $msgstr = ""; while () { $nextfuzzy = 1 if /^#, fuzzy/; if (/^msgid "((\\.|[^\\])*)"/ ) { $translations{$lang, $msgid} = $msgstr if $inmsgstr && $msgid && $msgstr; $msgid = ""; $msgstr = ""; if ($nextfuzzy) { $inmsgid = 0; } else { $msgid = unescape_po_string($1); $inmsgid = 1; } $inmsgstr = 0; $nextfuzzy = 0; } if (/^msgstr "((\\.|[^\\])*)"/) { $msgstr = unescape_po_string($1); $inmsgstr = 1; $inmsgid = 0; } if (/^"((\\.|[^\\])*)"/) { $msgid .= unescape_po_string($1) if $inmsgid; $msgstr .= unescape_po_string($1) if $inmsgstr; } } $translations{$lang, $msgid} = $msgstr if $inmsgstr && $msgid && $msgstr; } } sub finalize { } sub unescape_one_sequence { my ($sequence) = @_; return "\\" if $sequence eq "\\\\"; return "\"" if $sequence eq "\\\""; return "\n" if $sequence eq "\\n"; return "\r" if $sequence eq "\\r"; return "\t" if $sequence eq "\\t"; return "\b" if $sequence eq "\\b"; return "\f" if $sequence eq "\\f"; return "\a" if $sequence eq "\\a"; return chr(11) if $sequence eq "\\v"; # vertical tab, see ascii(7) return chr(hex($1)) if ($sequence =~ /\\x([0-9a-fA-F]{2})/); return chr(oct($1)) if ($sequence =~ /\\([0-7]{3})/); # FIXME: Is \0 supported as well? Kenneth and Rodney don't want it, see bug #48489 return $sequence; } sub unescape_po_string { my ($string) = @_; $string =~ s/(\\x[0-9a-fA-F]{2}|\\[0-7]{3}|\\.)/unescape_one_sequence($1)/eg; return $string; } ## NOTE: deal with < - < but not > - > because it seems its ok to have ## > in the entity. For further info please look at #84738. sub entity_decode { local ($_) = @_; s/'/'/g; # ' s/"/"/g; # " s/&/&/g; s/</; close INPUT; } open OUTPUT, ">$OUTFILE" or die "can't open $OUTFILE: $!"; # Binmode so that selftest works ok if using a native Win32 Perl... binmode (OUTPUT) if $^O eq 'MSWin32'; while ($source =~ s|^(.*?)([ \t]*<\s*$w+\s+($w+\s*=\s*"$q"\s*)+/?>)([ \t]*\n)?||s) { print OUTPUT $1; my $node = $2 . "\n"; my @strings = (); $_ = $node; while (s/(\s)_($w+\s*=\s*"($q)")/$1$2/s) { push @strings, entity_decode($3); } print OUTPUT; my %langs; for my $string (@strings) { for my $lang (keys %po_files_by_lang) { $langs{$lang} = 1 if $translations{$lang, $string}; } } for my $lang (sort keys %langs) { $_ = $node; s/(\sname\s*=\s*)"($q)"/$1"$2-$lang"/s; s/(\s)_($w+\s*=\s*")($q)"/$1 . $2 . entity_encoded_translation($lang, $3) . '"'/seg; print OUTPUT; } } print OUTPUT $source; close OUTPUT; } ## XML (non-bonobo-activation) merge code # Process tag attributes # Only parameter is a HASH containing attributes -> values mapping sub getAttributeString { my $sub = shift; my $do_translate = shift || 0; my $language = shift || ""; my $result = ""; my $translate = shift; foreach my $e (reverse(sort(keys %{ $sub }))) { my $key = $e; my $string = $sub->{$e}; my $quote = '"'; $string =~ s/^[\s]+//; $string =~ s/[\s]+$//; if ($string =~ /^'.*'$/) { $quote = "'"; } $string =~ s/^['"]//g; $string =~ s/['"]$//g; if ($do_translate && $key =~ /^_/) { $key =~ s|^_||g; if ($language) { # Handle translation my $decode_string = entity_decode($string); my $translation = $translations{$language, $decode_string}; if ($translation) { $translation = entity_encode($translation); $string = $translation; } $$translate = 2; } else { $$translate = 2 if ($translate && (!$$translate)); # watch not to "overwrite" $translate } } $result .= " $key=$quote$string$quote"; } return $result; } # Returns a translatable string from XML node, it works on contents of every node in XML::Parser tree sub getXMLstring { my $ref = shift; my $spacepreserve = shift || 0; my @list = @{ $ref }; my $result = ""; my $count = scalar(@list); my $attrs = $list[0]; my $index = 1; $spacepreserve = 1 if ((exists $attrs->{"xml:space"}) && ($attrs->{"xml:space"} =~ /^["']?preserve["']?$/)); $spacepreserve = 0 if ((exists $attrs->{"xml:space"}) && ($attrs->{"xml:space"} =~ /^["']?default["']?$/)); while ($index < $count) { my $type = $list[$index]; my $content = $list[$index+1]; if (! $type ) { # We've got CDATA if ($content) { # lets strip the whitespace here, and *ONLY* here $content =~ s/\s+/ /gs if (!$spacepreserve); $result .= $content; } } elsif ( "$type" ne "1" ) { # We've got another element $result .= "<$type"; $result .= getAttributeString(@{$content}[0], 0); # no nested translatable elements if ($content) { my $subresult = getXMLstring($content, $spacepreserve); if ($subresult) { $result .= ">".$subresult . ""; } else { $result .= "/>"; } } else { $result .= "/>"; } } $index += 2; } return $result; } # Translate list of nodes if necessary sub translate_subnodes { my $fh = shift; my $content = shift; my $language = shift || ""; my $singlelang = shift || 0; my $spacepreserve = shift || 0; my @nodes = @{ $content }; my $count = scalar(@nodes); my $index = 0; while ($index < $count) { my $type = $nodes[$index]; my $rest = $nodes[$index+1]; if ($singlelang) { my $oldMO = $MULTIPLE_OUTPUT; $MULTIPLE_OUTPUT = 1; traverse($fh, $type, $rest, $language, $spacepreserve); $MULTIPLE_OUTPUT = $oldMO; } else { traverse($fh, $type, $rest, $language, $spacepreserve); } $index += 2; } } sub isWellFormedXmlFragment { my $ret = eval 'require XML::Parser'; if(!$ret) { die "You must have XML::Parser installed to run $0\n\n"; } my $fragment = shift; return 0 if (!$fragment); $fragment = "$fragment"; my $xp = new XML::Parser(Style => 'Tree'); my $tree = 0; eval { $tree = $xp->parse($fragment); }; return $tree; } sub traverse { my $fh = shift; my $nodename = shift; my $content = shift; my $language = shift || ""; my $spacepreserve = shift || 0; if (!$nodename) { if ($content =~ /^[\s]*$/) { $leading_space .= $content; } print $fh $content; } else { # element my @all = @{ $content }; my $attrs = shift @all; my $translate = 0; my $outattr = getAttributeString($attrs, 1, $language, \$translate); if ($nodename =~ /^_/) { $translate = 1; $nodename =~ s/^_//; } my $lookup = ''; $spacepreserve = 0 if ((exists $attrs->{"xml:space"}) && ($attrs->{"xml:space"} =~ /^["']?default["']?$/)); $spacepreserve = 1 if ((exists $attrs->{"xml:space"}) && ($attrs->{"xml:space"} =~ /^["']?preserve["']?$/)); print $fh "<$nodename", $outattr; if ($translate) { $lookup = getXMLstring($content, $spacepreserve); if (!$spacepreserve) { $lookup =~ s/^\s+//s; $lookup =~ s/\s+$//s; } if ($lookup || $translate == 2) { my $translation = $translations{$language, $lookup} if isWellFormedXmlFragment($translations{$language, $lookup}); if ($MULTIPLE_OUTPUT && ($translation || $translate == 2)) { $translation = $lookup if (!$translation); print $fh " xml:lang=\"", $language, "\"" if $language; print $fh ">"; if ($translate == 2) { translate_subnodes($fh, \@all, $language, 1, $spacepreserve); } else { print $fh $translation; } print $fh ""; return; # this means there will be no same translation with xml:lang="$language"... # if we want them both, just remove this "return" } else { print $fh ">"; if ($translate == 2) { translate_subnodes($fh, \@all, $language, 1, $spacepreserve); } else { print $fh $lookup; } print $fh ""; } } else { print $fh "/>"; } for my $lang (sort keys %po_files_by_lang) { if ($MULTIPLE_OUTPUT && $lang ne "$language") { next; } if ($lang) { # Handle translation # my $translate = 0; my $localattrs = getAttributeString($attrs, 1, $lang, \$translate); my $translation = $translations{$lang, $lookup} if isWellFormedXmlFragment($translations{$lang, $lookup}); if ($translate && !$translation) { $translation = $lookup; } if ($translation || $translate) { print $fh "\n"; $leading_space =~ s/.*\n//g; print $fh $leading_space; print $fh "<", $nodename, " xml:lang=\"", $lang, "\"", $localattrs, ">"; if ($translate == 2) { translate_subnodes($fh, \@all, $lang, 1, $spacepreserve); } else { print $fh $translation; } print $fh ""; } } } } else { my $count = scalar(@all); if ($count > 0) { print $fh ">"; my $index = 0; while ($index < $count) { my $type = $all[$index]; my $rest = $all[$index+1]; traverse($fh, $type, $rest, $language, $spacepreserve); $index += 2; } print $fh ""; } else { print $fh "/>"; } } } } sub intltool_tree_comment { my $expat = shift; my $data = shift; my $clist = $expat->{Curlist}; my $pos = $#$clist; push @$clist, 1 => $data; } sub intltool_tree_cdatastart { my $expat = shift; my $clist = $expat->{Curlist}; my $pos = $#$clist; push @$clist, 0 => $expat->original_string(); } sub intltool_tree_cdataend { my $expat = shift; my $clist = $expat->{Curlist}; my $pos = $#$clist; $clist->[$pos] .= $expat->original_string(); } sub intltool_tree_char { my $expat = shift; my $text = shift; my $clist = $expat->{Curlist}; my $pos = $#$clist; # Use original_string so that we retain escaped entities # in CDATA sections. # if ($pos > 0 and $clist->[$pos - 1] eq '0') { $clist->[$pos] .= $expat->original_string(); } else { push @$clist, 0 => $expat->original_string(); } } sub intltool_tree_start { my $expat = shift; my $tag = shift; my @origlist = (); # Use original_string so that we retain escaped entities # in attribute values. We must convert the string to an # @origlist array to conform to the structure of the Tree # Style. # my @original_array = split /\x/, $expat->original_string(); my $source = $expat->original_string(); # Remove leading tag. # $source =~ s|^\s*<\s*(\S+)||s; # Grab attribute key/value pairs and push onto @origlist array. # while ($source) { if ($source =~ /^\s*([\w:-]+)\s*[=]\s*["]/) { $source =~ s|^\s*([\w:-]+)\s*[=]\s*["]([^"]*)["]||s; push @origlist, $1; push @origlist, '"' . $2 . '"'; } elsif ($source =~ /^\s*([\w:-]+)\s*[=]\s*[']/) { $source =~ s|^\s*([\w:-]+)\s*[=]\s*[']([^']*)[']||s; push @origlist, $1; push @origlist, "'" . $2 . "'"; } else { last; } } my $ol = [ { @origlist } ]; push @{ $expat->{Lists} }, $expat->{Curlist}; push @{ $expat->{Curlist} }, $tag => $ol; $expat->{Curlist} = $ol; } sub readXml { my $filename = shift || return; if(!-f $filename) { die "ERROR Cannot find filename: $filename\n"; } my $ret = eval 'require XML::Parser'; if(!$ret) { die "You must have XML::Parser installed to run $0\n\n"; } my $xp = new XML::Parser(Style => 'Tree'); $xp->setHandlers(Char => \&intltool_tree_char); $xp->setHandlers(Start => \&intltool_tree_start); $xp->setHandlers(CdataStart => \&intltool_tree_cdatastart); $xp->setHandlers(CdataEnd => \&intltool_tree_cdataend); my $tree = $xp->parsefile($filename); # Hello thereHowdydo # would be: # [foo, [{}, head, [{id => "a"}, 0, "Hello ", em, [{}, 0, "there"]], bar, [{}, # 0, "Howdy", ref, [{}]], 0, "do" ] ] return $tree; } sub print_header { my $infile = shift; my $fh = shift; my $source; if(!-f $infile) { die "ERROR Cannot find filename: $infile\n"; } print $fh qq{\n}; { local $/; open DOCINPUT, "<${FILE}" or die; $source = ; close DOCINPUT; } if ($source =~ /()/s) { print $fh "$1\n"; } elsif ($source =~ /(]*>)/s) { print $fh "$1\n"; } } sub parseTree { my $fh = shift; my $ref = shift; my $language = shift || ""; my $name = shift @{ $ref }; my $cont = shift @{ $ref }; while (!$name || "$name" eq "1") { $name = shift @{ $ref }; $cont = shift @{ $ref }; } my $spacepreserve = 0; my $attrs = @{$cont}[0]; $spacepreserve = 1 if ((exists $attrs->{"xml:space"}) && ($attrs->{"xml:space"} =~ /^["']?preserve["']?$/)); traverse($fh, $name, $cont, $language, $spacepreserve); } sub xml_merge_output { my $source; if ($MULTIPLE_OUTPUT) { for my $lang (sort keys %po_files_by_lang) { if ( ! -e $lang ) { mkdir $lang or die "Cannot create subdirectory $lang: $!\n"; } open OUTPUT, ">$lang/$OUTFILE" or die "Cannot open $lang/$OUTFILE: $!\n"; binmode (OUTPUT) if $^O eq 'MSWin32'; my $tree = readXml($FILE); print_header($FILE, \*OUTPUT); parseTree(\*OUTPUT, $tree, $lang); close OUTPUT; print "CREATED $lang/$OUTFILE\n" unless $QUIET_ARG; } } open OUTPUT, ">$OUTFILE" or die "Cannot open $OUTFILE: $!\n"; binmode (OUTPUT) if $^O eq 'MSWin32'; my $tree = readXml($FILE); print_header($FILE, \*OUTPUT); parseTree(\*OUTPUT, $tree); close OUTPUT; print "CREATED $OUTFILE\n" unless $QUIET_ARG; } sub keys_merge_translations { open INPUT, "<${FILE}" or die; open OUTPUT, ">${OUTFILE}" or die; binmode (OUTPUT) if $^O eq 'MSWin32'; while () { if (s/^(\s*)_(\w+=(.*))/$1$2/) { my $string = $3; print OUTPUT; my $non_translated_line = $_; for my $lang (sort keys %po_files_by_lang) { my $translation = $translations{$lang, $string}; next if !$translation; $_ = $non_translated_line; s/(\w+)=.*/[$lang]$1=$translation/; print OUTPUT; } } else { print OUTPUT; } } close OUTPUT; close INPUT; } sub desktop_merge_translations { open INPUT, "<${FILE}" or die; open OUTPUT, ">${OUTFILE}" or die; binmode (OUTPUT) if $^O eq 'MSWin32'; while () { if (s/^(\s*)_(\w+=(.*))/$1$2/) { my $string = $3; print OUTPUT; my $non_translated_line = $_; for my $lang (sort keys %po_files_by_lang) { my $translation = $translations{$lang, $string}; next if !$translation; $_ = $non_translated_line; s/(\w+)=.*/${1}[$lang]=$translation/; print OUTPUT; } } else { print OUTPUT; } } close OUTPUT; close INPUT; } sub schemas_merge_translations { my $source; { local $/; # slurp mode open INPUT, "<$FILE" or die "can't open $FILE: $!"; $source = ; close INPUT; } open OUTPUT, ">$OUTFILE" or die; binmode (OUTPUT) if $^O eq 'MSWin32'; # FIXME: support attribute translations # Empty nodes never need translation, so unmark all of them. # For example, <_foo/> is just replaced by . $source =~ s|<\s*_($w+)\s*/>|<$1/>|g; while ($source =~ s/ (.*?) (\s+)((\s*) (\s*(?:\s*)?(.*?)\s*<\/default>)?(\s*) (\s*(?:\s*)?(.*?)\s*<\/short>)?(\s*) (\s*(?:\s*)?(.*?)\s*<\/long>)?(\s*) <\/locale>) //sx) { print OUTPUT $1; my $locale_start_spaces = $2 ? $2 : ''; my $default_spaces = $4 ? $4 : ''; my $short_spaces = $7 ? $7 : ''; my $long_spaces = $10 ? $10 : ''; my $locale_end_spaces = $13 ? $13 : ''; my $c_default_block = $3 ? $3 : ''; my $default_string = $6 ? $6 : ''; my $short_string = $9 ? $9 : ''; my $long_string = $12 ? $12 : ''; print OUTPUT "$locale_start_spaces$c_default_block"; $default_string =~ s/\s+/ /g; $default_string = entity_decode($default_string); $short_string =~ s/\s+/ /g; $short_string = entity_decode($short_string); $long_string =~ s/\s+/ /g; $long_string = entity_decode($long_string); for my $lang (sort keys %po_files_by_lang) { my $default_translation = $translations{$lang, $default_string}; my $short_translation = $translations{$lang, $short_string}; my $long_translation = $translations{$lang, $long_string}; next if (!$default_translation && !$short_translation && !$long_translation); print OUTPUT "\n$locale_start_spaces"; print OUTPUT "$default_spaces"; if ($default_translation) { $default_translation = entity_encode($default_translation); print OUTPUT "$default_translation"; } print OUTPUT "$short_spaces"; if ($short_translation) { $short_translation = entity_encode($short_translation); print OUTPUT "$short_translation"; } print OUTPUT "$long_spaces"; if ($long_translation) { $long_translation = entity_encode($long_translation); print OUTPUT "$long_translation"; } print OUTPUT "$locale_end_spaces"; } } print OUTPUT $source; close OUTPUT; } sub rfc822deb_merge_translations { my %encodings = (); for my $lang (keys %po_files_by_lang) { $encodings{$lang} = ($UTF8_ARG ? 'UTF-8' : get_po_encoding($po_files_by_lang{$lang})); } my $source; $Text::Wrap::huge = 'overflow'; $Text::Wrap::break = qr/\n|\s(?=\S)/; { local $/; # slurp mode open INPUT, "<$FILE" or die "can't open $FILE: $!"; $source = ; close INPUT; } open OUTPUT, ">${OUTFILE}" or die; binmode (OUTPUT) if $^O eq 'MSWin32'; while ($source =~ /(^|\n+)(_*)([^:\s]+)(:[ \t]*)(.*?)(?=\n[\S\n]|$)/sg) { my $sep = $1; my $non_translated_line = $3.$4; my $string = $5; my $underscore = length($2); next if $underscore eq 0 && $non_translated_line =~ /^#/; # Remove [] dummy strings my $stripped = $string; $stripped =~ s/\[\s[^\[\]]*\],/,/g if $underscore eq 2; $stripped =~ s/\[\s[^\[\]]*\]$//; $non_translated_line .= $stripped; print OUTPUT $sep.$non_translated_line; if ($underscore) { my @str_list = rfc822deb_split($underscore, $string); for my $lang (sort keys %po_files_by_lang) { my $is_translated = 1; my $str_translated = ''; my $first = 1; for my $str (@str_list) { my $translation = $translations{$lang, $str}; if (!$translation) { $is_translated = 0; last; } # $translation may also contain [] dummy # strings, mostly to indicate an empty string $translation =~ s/\[\s[^\[\]]*\]$//; if ($first) { if ($underscore eq 2) { $str_translated .= $translation; } else { $str_translated .= Text::Tabs::expand($translation) . "\n"; } } else { if ($underscore eq 2) { $str_translated .= ', ' . $translation; } else { $str_translated .= Text::Tabs::expand( Text::Wrap::wrap(' ', ' ', $translation)) . "\n .\n"; } } $first = 0; # To fix some problems with Text::Wrap::wrap $str_translated =~ s/(\n )+\n/\n .\n/g; } next unless $is_translated; $str_translated =~ s/\n \.\n$//; $str_translated =~ s/\s+$//; $_ = $non_translated_line; s/^(\w+):\s*.*/$sep${1}-$lang.$encodings{$lang}: $str_translated/s; print OUTPUT; } } } print OUTPUT "\n"; close OUTPUT; close INPUT; } sub rfc822deb_split { # Debian defines a special way to deal with rfc822-style files: # when a value contain newlines, it consists of # 1. a short form (first line) # 2. a long description, all lines begin with a space, # and paragraphs are separated by a single dot on a line # This routine returns an array of all paragraphs, and reformat # them. # When first argument is 2, the string is a comma separated list of # values. my $type = shift; my $text = shift; $text =~ s/^[ \t]//mg; return (split(/, */, $text, 0)) if $type ne 1; return ($text) if $text !~ /\n/; $text =~ s/([^\n]*)\n//; my @list = ($1); my $str = ''; for my $line (split (/\n/, $text)) { chomp $line; if ($line =~ /^\.\s*$/) { # New paragraph $str =~ s/\s*$//; push(@list, $str); $str = ''; } elsif ($line =~ /^\s/) { # Line which must not be reformatted $str .= "\n" if length ($str) && $str !~ /\n$/; $line =~ s/\s+$//; $str .= $line."\n"; } else { # Continuation line, remove newline $str .= " " if length ($str) && $str !~ /\n$/; $str .= $line; } } $str =~ s/\s*$//; push(@list, $str) if length ($str); return @list; } atomix-2.14.0/intltool-update.in0000644000175000017500000006470310404437641013511 00000000000000#!@INTLTOOL_PERL@ -w # -*- Mode: perl; indent-tabs-mode: nil; c-basic-offset: 4 -*- # # The Intltool Message Updater # # Copyright (C) 2000-2003 Free Software Foundation. # # Intltool is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License # version 2 published by the Free Software Foundation. # # Intltool 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, write to the Free Software # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. # # Authors: Kenneth Christiansen # Maciej Stachowiak # Darin Adler ## Release information my $PROGRAM = "intltool-update"; my $VERSION = "0.34.2"; my $PACKAGE = "intltool"; ## Loaded modules use strict; use Getopt::Long; use Cwd; use File::Copy; use File::Find; ## Scalars used by the option stuff my $HELP_ARG = 0; my $VERSION_ARG = 0; my $DIST_ARG = 0; my $POT_ARG = 0; my $HEADERS_ARG = 0; my $MAINTAIN_ARG = 0; my $REPORT_ARG = 0; my $VERBOSE = 0; my $GETTEXT_PACKAGE = ""; my $OUTPUT_FILE = ""; my @languages; my %varhash = (); my %po_files_by_lang = (); # Regular expressions to categorize file types. # FIXME: Please check if the following is correct my $xml_support = "xml(?:\\.in)*|". # http://www.w3.org/XML/ (Note: .in is not required) "ui|". # Bonobo specific - User Interface desc. files "lang|". # ? "glade2?(?:\\.in)*|". # Glade specific - User Interface desc. files (Note: .in is not required) "scm(?:\\.in)*|". # ? (Note: .in is not required) "oaf(?:\\.in)+|". # DEPRECATED: Replaces by Bonobo .server files "etspec|". # ? "server(?:\\.in)+|". # Bonobo specific "sheet(?:\\.in)+|". # ? "schemas(?:\\.in)+|". # GConf specific "pong(?:\\.in)+|". # DEPRECATED: PONG is not used [by GNOME] any longer. "kbd(?:\\.in)+"; # GOK specific. my $ini_support = "icon(?:\\.in)+|". # http://www.freedesktop.org/Standards/icon-theme-spec "desktop(?:\\.in)+|". # http://www.freedesktop.org/Standards/menu-spec "caves(?:\\.in)+|". # GNOME Games specific "directory(?:\\.in)+|". # http://www.freedesktop.org/Standards/menu-spec "soundlist(?:\\.in)+|". # GNOME specific "keys(?:\\.in)+|". # GNOME Mime database specific "theme(?:\\.in)+|". # http://www.freedesktop.org/Standards/icon-theme-spec "service(?:\\.in)+"; # DBus specific my $buildin_gettext_support = "c|y|cs|cc|cpp|c\\+\\+|h|hh|gob|py"; ## Always flush buffer when printing $| = 1; ## Sometimes the source tree will be rooted somewhere else. my $SRCDIR = "."; my $POTFILES_in; $SRCDIR = $ENV{"srcdir"} if $ENV{"srcdir"}; $POTFILES_in = "<$SRCDIR/POTFILES.in"; my $devnull = ($^O eq 'MSWin32' ? 'NUL:' : '/dev/null'); ## Handle options GetOptions ( "help" => \$HELP_ARG, "version" => \$VERSION_ARG, "dist|d" => \$DIST_ARG, "pot|p" => \$POT_ARG, "headers|s" => \$HEADERS_ARG, "maintain|m" => \$MAINTAIN_ARG, "report|r" => \$REPORT_ARG, "verbose|x" => \$VERBOSE, "gettext-package|g=s" => \$GETTEXT_PACKAGE, "output-file|o=s" => \$OUTPUT_FILE, ) or &Console_WriteError_InvalidOption; &Console_Write_IntltoolHelp if $HELP_ARG; &Console_Write_IntltoolVersion if $VERSION_ARG; my $arg_count = ($DIST_ARG > 0) + ($POT_ARG > 0) + ($HEADERS_ARG > 0) + ($MAINTAIN_ARG > 0) + ($REPORT_ARG > 0); &Console_Write_IntltoolHelp if $arg_count > 1; # --version and --help don't require a module name my $MODULE = $GETTEXT_PACKAGE || &FindPackageName; if ($POT_ARG) { &GenerateHeaders; &GeneratePOTemplate; } elsif ($HEADERS_ARG) { &GenerateHeaders; } elsif ($MAINTAIN_ARG) { &FindLeftoutFiles; } elsif ($REPORT_ARG) { &GenerateHeaders; &GeneratePOTemplate; &Console_Write_CoverageReport; } elsif ((defined $ARGV[0]) && $ARGV[0] =~ /^[a-z]/) { my $lang = $ARGV[0]; ## Report error if the language file supplied ## to the command line is non-existent &Console_WriteError_NotExisting("$SRCDIR/$lang.po") if ! -s "$SRCDIR/$lang.po"; if (!$DIST_ARG) { print "Working, please wait..." if $VERBOSE; &GenerateHeaders; &GeneratePOTemplate; } &POFile_Update ($lang, $OUTPUT_FILE); &Console_Write_TranslationStatus ($lang, $OUTPUT_FILE); } else { &Console_Write_IntltoolHelp; } exit; ######### sub Console_Write_IntltoolVersion { print <<_EOF_; ${PROGRAM} (${PACKAGE}) $VERSION Written by Kenneth Christiansen, Maciej Stachowiak, and Darin Adler. Copyright (C) 2000-2003 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. _EOF_ exit; } sub Console_Write_IntltoolHelp { print <<_EOF_; Usage: ${PROGRAM} [OPTION]... LANGCODE Updates PO template files and merge them with the translations. Mode of operation (only one is allowed): -p, --pot generate the PO template only -s, --headers generate the header files in POTFILES.in -m, --maintain search for left out files from POTFILES.in -r, --report display a status report for the module -d, --dist merge LANGCODE.po with existing PO template Extra options: -g, --gettext-package=NAME override PO template name, useful with --pot -o, --output-file=FILE write merged translation to FILE -x, --verbose display lots of feedback --help display this help and exit --version output version information and exit Examples of use: ${PROGRAM} --pot just create a new PO template ${PROGRAM} xy create new PO template and merge xy.po with it Report bugs to http://bugzilla.gnome.org/ (product name "$PACKAGE") or send email to . _EOF_ exit; } sub echo_n { my $str = shift; my $ret = `echo "$str"`; $ret =~ s/\n$//; # do we need the "s" flag? return $ret; } sub POFile_DetermineType ($) { my $type = $_; my $gettext_type; my $xml_regex = "(?:" . $xml_support . ")"; my $ini_regex = "(?:" . $ini_support . ")"; my $buildin_regex = "(?:" . $buildin_gettext_support . ")"; if ($type =~ /\[type: gettext\/([^\]].*)]/) { $gettext_type=$1; } elsif ($type =~ /schemas(\.in)+$/) { $gettext_type="schemas"; } elsif ($type =~ /glade2?(\.in)*$/) { $gettext_type="glade"; } elsif ($type =~ /scm(\.in)*$/) { $gettext_type="scheme"; } elsif ($type =~ /keys(\.in)+$/) { $gettext_type="keys"; } # bucket types elsif ($type =~ /$xml_regex$/) { $gettext_type="xml"; } elsif ($type =~ /$ini_regex$/) { $gettext_type="ini"; } elsif ($type =~ /$buildin_regex$/) { $gettext_type="buildin"; } else { $gettext_type="unknown"; } return "gettext\/$gettext_type"; } sub TextFile_DetermineEncoding ($) { my $gettext_code="ASCII"; # All files are ASCII by default my $filetype=`file $_ | cut -d ' ' -f 2`; if ($? eq "0") { if ($filetype =~ /^(ISO|UTF)/) { chomp ($gettext_code = $filetype); } elsif ($filetype =~ /^XML/) { $gettext_code="UTF-8"; # We asume that .glade and other .xml files are UTF-8 } } return $gettext_code; } sub isNotValidMissing { my ($file) = @_; return if $file =~ /^\{arch\}\/.*$/; return if $file =~ /^$varhash{"PACKAGE"}-$varhash{"VERSION"}\/.*$/; } sub FindLeftoutFiles { my (@buf_i18n_plain, @buf_i18n_xml, @buf_i18n_xml_unmarked, @buf_i18n_ini, @buf_potfiles, @buf_potfiles_ignore, @buf_allfiles, @buf_allfiles_sorted, @buf_potfiles_sorted ); ## Search and find all translatable files find sub { push @buf_i18n_plain, "$File::Find::name" if /\.($buildin_gettext_support)$/; push @buf_i18n_xml, "$File::Find::name" if /\.($xml_support)$/; push @buf_i18n_ini, "$File::Find::name" if /\.($ini_support)$/; push @buf_i18n_xml_unmarked, "$File::Find::name" if /\.(schemas(\.in)+)$/; }, ".."; open POTFILES, $POTFILES_in or die "$PROGRAM: there's no POTFILES.in!\n"; @buf_potfiles = grep !/^(#|\s*$)/, ; close POTFILES; foreach (@buf_potfiles) { s/^\[.*]\s*//; } print "Searching for missing translatable files...\n" if $VERBOSE; ## Check if we should ignore some found files, when ## comparing with POTFILES.in foreach my $ignore ("POTFILES.skip", "POTFILES.ignore") { (-s $ignore) or next; if ("$ignore" eq "POTFILES.ignore") { print "The usage of POTFILES.ignore is deprecated. Please consider moving the\n". "content of this file to POTFILES.skip.\n"; } print "Found $ignore: Ignoring files...\n" if $VERBOSE; open FILE, "<$ignore" or die "ERROR: Failed to open $ignore!\n"; while () { push @buf_potfiles_ignore, $_ unless /^(#|\s*$)/; } close FILE; @buf_potfiles = (@buf_potfiles_ignore, @buf_potfiles); } foreach my $file (@buf_i18n_plain) { my $in_comment = 0; my $in_macro = 0; open FILE, "<$file"; while () { # Handle continued multi-line comment. if ($in_comment) { next unless s-.*\*/--; $in_comment = 0; } # Handle continued macro. if ($in_macro) { $in_macro = 0 unless /\\$/; next; } # Handle start of macro (or any preprocessor directive). if (/^\s*\#/) { $in_macro = 1 if /^([^\\]|\\.)*\\$/; next; } # Handle comments and quoted text. while (m-(/\*|//|\'|\")-) # \' and \" keep emacs perl mode happy { my $match = $1; if ($match eq "/*") { if (!s-/\*.*?\*/--) { s-/\*.*--; $in_comment = 1; } } elsif ($match eq "//") { s-//.*--; } else # ' or " { if (!s-$match([^\\]|\\.)*?$match-QUOTEDTEXT-) { warn "mismatched quotes at line $. in $file\n"; s-$match.*--; } } } if (/\.GetString ?\(QUOTEDTEXT/) { if (defined isNotValidMissing (unpack("x3 A*", $file))) { ## Remove the first 3 chars and add newline push @buf_allfiles, unpack("x3 A*", $file) . "\n"; } last; } if (/_\(QUOTEDTEXT/) { if (defined isNotValidMissing (unpack("x3 A*", $file))) { ## Remove the first 3 chars and add newline push @buf_allfiles, unpack("x3 A*", $file) . "\n"; } last; } } close FILE; } foreach my $file (@buf_i18n_xml) { open FILE, "<$file"; while () { # FIXME: share the pattern matching code with intltool-extract if (/\s_[-A-Za-z0-9._:]+\s*=\s*\"([^"]+)\"/ || /<_[^>]+>/ || /translatable=\"yes\"/) { if (defined isNotValidMissing (unpack("x3 A*", $file))) { push @buf_allfiles, unpack("x3 A*", $file) . "\n"; } last; } } close FILE; } foreach my $file (@buf_i18n_ini) { open FILE, "<$file"; while () { if (/_(.*)=/) { if (defined isNotValidMissing (unpack("x3 A*", $file))) { push @buf_allfiles, unpack("x3 A*", $file) . "\n"; } last; } } close FILE; } foreach my $file (@buf_i18n_xml_unmarked) { if (defined isNotValidMissing (unpack("x3 A*", $file))) { push @buf_allfiles, unpack("x3 A*", $file) . "\n"; } } @buf_allfiles_sorted = sort (@buf_allfiles); @buf_potfiles_sorted = sort (@buf_potfiles); my %in2; foreach (@buf_potfiles_sorted) { $in2{$_} = 1; } my @result; foreach (@buf_allfiles_sorted) { if (!exists($in2{$_})) { push @result, $_ } } my @buf_potfiles_notexist; foreach (@buf_potfiles_sorted) { chomp (my $dummy = $_); if ("$dummy" ne "" and ! -f "../$dummy") { push @buf_potfiles_notexist, $_; } } ## Save file with information about the files missing ## if any, and give information about this procedure. if (@result + @buf_potfiles_notexist > 0) { if (@result) { print "\n" if $VERBOSE; unlink "missing"; open OUT, ">missing"; print OUT @result; close OUT; warn "\e[1mThe following files contain translations and are currently not in use. Please\e[0m\n". "\e[1mconsider adding these to the POTFILES.in file, located in the po/ directory.\e[0m\n\n"; print STDERR @result, "\n"; warn "If some of these files are left out on purpose then please add them to\n". "POTFILES.skip instead of POTFILES.in. A file \e[1m'missing'\e[0m containing this list\n". "of left out files has been written in the current directory.\n"; } if (@buf_potfiles_notexist) { unlink "notexist"; open OUT, ">notexist"; print OUT @buf_potfiles_notexist; close OUT; warn "\n" if ($VERBOSE or @result); warn "\e[1mThe following files do not exist anymore:\e[0m\n\n"; warn @buf_potfiles_notexist, "\n"; warn "Please remove them from POTFILES.in or POTFILES.skip. A file \e[1m'notexist'\e[0m\n". "containing this list of absent files has been written in the current directory.\n"; } } ## If there is nothing to complain about, notify the user else { print "\nAll files containing translations are present in POTFILES.in.\n" if $VERBOSE; } } sub Console_WriteError_InvalidOption { ## Handle invalid arguments print STDERR "Try `${PROGRAM} --help' for more information.\n"; exit 1; } sub GenerateHeaders { my $EXTRACT = "@INTLTOOL_EXTRACT@"; chomp $EXTRACT; $EXTRACT = $ENV{"INTLTOOL_EXTRACT"} if $ENV{"INTLTOOL_EXTRACT"}; ## Generate the .h header files, so we can allow glade and ## xml translation support if (! -x "$EXTRACT") { print STDERR "\n *** The intltool-extract script wasn't found!" ."\n *** Without it, intltool-update can not generate files.\n"; exit; } else { open (FILE, $POTFILES_in) or die "$PROGRAM: POTFILES.in not found.\n"; while () { chomp; next if /^\[\s*encoding/; ## Find xml files in POTFILES.in and generate the ## files with help from the extract script my $gettext_type= &POFile_DetermineType ($1); if (/\.($xml_support|$ini_support)$/ || /^\[/) { s/^\[[^\[].*]\s*//; my $filename = "../$_"; if ($VERBOSE) { system ($EXTRACT, "--update", "--srcdir=$SRCDIR", "--type=$gettext_type", $filename); } else { system ($EXTRACT, "--update", "--type=$gettext_type", "--srcdir=$SRCDIR", "--quiet", $filename); } } } close FILE; } } # # Generate .pot file from POTFILES.in # sub GeneratePOTemplate { my $XGETTEXT = $ENV{"XGETTEXT"} || "@INTLTOOL_XGETTEXT@"; my $XGETTEXT_ARGS = $ENV{"XGETTEXT_ARGS"} || ''; chomp $XGETTEXT; if (! -x $XGETTEXT) { print STDERR " *** xgettext is not found on this system!\n". " *** Without it, intltool-update can not extract strings.\n"; exit; } print "Building $MODULE.pot...\n" if $VERBOSE; open INFILE, $POTFILES_in; unlink "POTFILES.in.temp"; open OUTFILE, ">POTFILES.in.temp" or die("Cannot open POTFILES.in.temp for writing"); my $gettext_support_nonascii = 0; # checks for GNU gettext >= 0.12 my $dummy = `$XGETTEXT --version --from-code=UTF-8 >$devnull 2>$devnull`; if ($? == 0) { $gettext_support_nonascii = 1; } else { # urge everybody to upgrade gettext print STDERR "WARNING: This version of gettext does not support extracting non-ASCII\n". " strings. That means you should install a version of gettext\n". " that supports non-ASCII strings (such as GNU gettext >= 0.12),\n". " or have to let non-ASCII strings untranslated. (If there is any)\n"; } my $encoding = "ASCII"; my $forced_gettext_code; my @temp_headers; my $encoding_problem_is_reported = 0; while () { next if (/^#/ or /^\s*$/); chomp; my $gettext_code; if (/^\[\s*encoding:\s*(.*)\s*\]/) { $forced_gettext_code=$1; } elsif (/\.($xml_support|$ini_support)$/ || /^\[/) { s/^\[.*]\s*//; print OUTFILE "../$_.h\n"; push @temp_headers, "../$_.h"; $gettext_code = &TextFile_DetermineEncoding ("../$_.h") if ($gettext_support_nonascii and not defined $forced_gettext_code); } else { if ($SRCDIR eq ".") { print OUTFILE "../$_\n"; } else { print OUTFILE "$SRCDIR/../$_\n"; } $gettext_code = &TextFile_DetermineEncoding ("../$_") if ($gettext_support_nonascii and not defined $forced_gettext_code); } next if (! $gettext_support_nonascii); if (defined $forced_gettext_code) { $encoding=$forced_gettext_code; } elsif (defined $gettext_code and "$encoding" ne "$gettext_code") { if ($encoding eq "ASCII") { $encoding=$gettext_code; } elsif ($gettext_code ne "ASCII") { # Only report once because the message is quite long if (! $encoding_problem_is_reported) { print STDERR "WARNING: You should use the same file encoding for all your project files,\n". " but $PROGRAM thinks that most of the source files are in\n". " $encoding encoding, while \"$_\" is (likely) in\n". " $gettext_code encoding. If you are sure that all translatable strings\n". " are in same encoding (say UTF-8), please \e[1m*prepend*\e[0m the following\n". " line to POTFILES.in:\n\n". " [encoding: UTF-8]\n\n". " and make sure that configure.in/ac checks for $PACKAGE >= 0.27 .\n". "(such warning message will only be reported once.)\n"; $encoding_problem_is_reported = 1; } } } } close OUTFILE; close INFILE; unlink "$MODULE.pot"; my @xgettext_argument=("$XGETTEXT", "--add-comments", "--directory\=\.", "--output\=$MODULE\.pot", "--files-from\=\.\/POTFILES\.in\.temp"); my $XGETTEXT_KEYWORDS = &FindPOTKeywords; push @xgettext_argument, $XGETTEXT_KEYWORDS; push @xgettext_argument, "--from-code\=$encoding" if ($gettext_support_nonascii); push @xgettext_argument, $XGETTEXT_ARGS if $XGETTEXT_ARGS; my $xgettext_command = join ' ', @xgettext_argument; # intercept xgettext error message print "Running $xgettext_command\n" if $VERBOSE; my $xgettext_error_msg = `$xgettext_command 2>\&1`; my $command_failed = $?; unlink "POTFILES.in.temp"; print "Removing generated header (.h) files..." if $VERBOSE; unlink foreach (@temp_headers); print "done.\n" if $VERBOSE; if (! $command_failed) { if (! -e "$MODULE.pot") { print "None of the files in POTFILES.in contain strings marked for translation.\n" if $VERBOSE; } else { print "Wrote $MODULE.pot\n" if $VERBOSE; } } else { if ($xgettext_error_msg =~ /--from-code/) { # replace non-ASCII error message with a more useful one. print STDERR "ERROR: xgettext failed to generate PO template file because there is non-ASCII\n". " string marked for translation. Please make sure that all strings marked\n". " for translation are in uniform encoding (say UTF-8), then \e[1m*prepend*\e[0m the\n". " following line to POTFILES.in and rerun $PROGRAM:\n\n". " [encoding: UTF-8]\n\n"; } else { print STDERR "$xgettext_error_msg"; if (-e "$MODULE.pot") { # is this possible? print STDERR "ERROR: xgettext failed but still managed to generate PO template file.\n". " Please consult error message above if there is any.\n"; } else { print STDERR "ERROR: xgettext failed to generate PO template file. Please consult\n". " error message above if there is any.\n"; } } exit (1); } } sub POFile_Update { -f "$MODULE.pot" or die "$PROGRAM: $MODULE.pot does not exist.\n"; my $MSGMERGE = $ENV{"MSGMERGE"} || "@INTLTOOL_MSGMERGE@"; my ($lang, $outfile) = @_; print "Merging $SRCDIR/$lang.po with $MODULE.pot..." if $VERBOSE; my $infile = "$SRCDIR/$lang.po"; $outfile = "$SRCDIR/$lang.po" if ($outfile eq ""); # I think msgmerge won't overwrite old file if merge is not successful system ("$MSGMERGE", "-o", $outfile, $infile, "$MODULE.pot"); } sub Console_WriteError_NotExisting { my ($file) = @_; ## Report error if supplied language file is non-existing print STDERR "$PROGRAM: $file does not exist!\n"; print STDERR "Try '$PROGRAM --help' for more information.\n"; exit; } sub GatherPOFiles { my @po_files = glob ("./*.po"); @languages = map (&POFile_GetLanguage, @po_files); foreach my $lang (@languages) { $po_files_by_lang{$lang} = shift (@po_files); } } sub POFile_GetLanguage ($) { s/^(.*\/)?(.+)\.po$/$2/; return $_; } sub Console_Write_TranslationStatus { my ($lang, $output_file) = @_; my $MSGFMT = $ENV{"MSGFMT"} || "@INTLTOOL_MSGFMT@"; $output_file = "$SRCDIR/$lang.po" if ($output_file eq ""); system ("$MSGFMT", "-o", "$devnull", "--verbose", $output_file); } sub Console_Write_CoverageReport { my $MSGFMT = $ENV{"MSGFMT"} || "@INTLTOOL_MSGFMT@"; &GatherPOFiles; foreach my $lang (@languages) { print "$lang: "; &POFile_Update ($lang, ""); } print "\n\n * Current translation support in $MODULE \n\n"; foreach my $lang (@languages) { print "$lang: "; system ("$MSGFMT", "-o", "$devnull", "--verbose", "$SRCDIR/$lang.po"); } } sub SubstituteVariable { my ($str) = @_; # always need to rewind file whenever it has been accessed seek (CONF, 0, 0); # cache each variable. varhash is global to we can add # variables elsewhere. while () { if (/^(\w+)=(.*)$/) { ($varhash{$1} = $2) =~ s/^["'](.*)["']$/$1/; } } if ($str =~ /^(.*)\${?([A-Z_]+)}?(.*)$/) { my $rest = $3; my $untouched = $1; my $sub = $varhash{$2}; return SubstituteVariable ("$untouched$sub$rest"); } # We're using Perl backticks ` and "echo -n" here in order to # expand any shell escapes (such as backticks themselves) in every variable return echo_n ($str); } sub CONF_Handle_Open { my $base_dirname = getcwd(); $base_dirname =~ s@.*/@@; my ($conf_in, $src_dir); if ($base_dirname =~ /^po(-.+)?$/) { if (-f "Makevars") { my $makefile_source; local (*IN); open (IN, ") { if (/^top_builddir[ \t]*=/) { $src_dir = $_; $src_dir =~ s/^top_builddir[ \t]*=[ \t]*([^ \t\n\r]*)/$1/; chomp $src_dir; if (-f "$src_dir" . "/configure.ac") { $conf_in = "$src_dir" . "/configure.ac" . "\n"; } else { $conf_in = "$src_dir" . "/configure.in" . "\n"; } last; } } close IN; $conf_in || die "Cannot find top_builddir in Makevars."; } elsif (-f "../configure.ac") { $conf_in = "../configure.ac"; } elsif (-f "../configure.in") { $conf_in = "../configure.in"; } else { my $makefile_source; local (*IN); open (IN, ") { if (/^top_srcdir[ \t]*=/) { $src_dir = $_; $src_dir =~ s/^top_srcdir[ \t]*=[ \t]*([^ \t\n\r]*)/$1/; chomp $src_dir; $conf_in = "$src_dir" . "/configure.in" . "\n"; last; } } close IN; $conf_in || die "Cannot find top_srcdir in Makefile."; } open (CONF, "<$conf_in"); } else { print STDERR "$PROGRAM: Unable to proceed.\n" . "Make sure to run this script inside the po directory.\n"; exit; } } sub FindPackageName { my $version; my $domain = &FindMakevarsDomain; my $name = $domain || "untitled"; &CONF_Handle_Open; my $conf_source; { local (*IN); open (IN, "<&CONF") || return $name; seek (IN, 0, 0); local $/; # slurp mode $conf_source = ; close IN; } # priority for getting package name: # 1. GETTEXT_PACKAGE # 2. first argument of AC_INIT (with >= 2 arguments) # 3. first argument of AM_INIT_AUTOMAKE (with >= 2 argument) # /^AM_INIT_AUTOMAKE\([\s\[]*([^,\)\s\]]+)/m # the \s makes this not work, why? if ($conf_source =~ /^AM_INIT_AUTOMAKE\(([^,\)]+),([^,\)]+)/m) { ($name, $version) = ($1, $2); $name =~ s/[\[\]\s]//g; $version =~ s/[\[\]\s]//g; $varhash{"PACKAGE_NAME"} = $name; $varhash{"PACKAGE"} = $name; $varhash{"PACKAGE_VERSION"} = $version; $varhash{"VERSION"} = $version; } if ($conf_source =~ /^AC_INIT\(([^,\)]+),([^,\)]+)/m) { ($name, $version) = ($1, $2); $name =~ s/[\[\]\s]//g; $version =~ s/[\[\]\s]//g; $varhash{"PACKAGE_NAME"} = $name; $varhash{"PACKAGE"} = $name; $varhash{"PACKAGE_VERSION"} = $version; $varhash{"VERSION"} = $version; } # \s makes this not work, why? $name = $1 if $conf_source =~ /^GETTEXT_PACKAGE=\[?([^\n\]]+)/m; # m4 macros AC_PACKAGE_NAME, AC_PACKAGE_VERSION etc. have same value # as corresponding $PACKAGE_NAME, $PACKAGE_VERSION etc. shell variables. $name =~ s/\bAC_PACKAGE_/\$PACKAGE_/g; $name = $domain if $domain; $name = SubstituteVariable ($name); $name =~ s/^["'](.*)["']$/$1/; return $name if $name; } sub FindPOTKeywords { my $keywords = "--keyword\=\_ --keyword\=N\_ --keyword\=U\_ --keyword\=Q\_"; my $varname = "XGETTEXT_OPTIONS"; my $make_source; { local (*IN); open (IN, "; close IN; } $keywords = $1 if $make_source =~ /^$varname[ ]*=\[?([^\n\]]+)/m; return $keywords; } sub FindMakevarsDomain { my $domain = ""; my $makevars_source; { local (*IN); open (IN, "; close IN; } $domain = $1 if $makevars_source =~ /^DOMAIN[ ]*=\[?([^\n\]\$]+)/m; $domain =~ s/^\s+//; $domain =~ s/\s+$//; return $domain; } atomix-2.14.0/atomix.desktop.in0000644000175000017500000000046310402237516013324 00000000000000[Desktop Entry] Encoding=UTF-8 _Name=Atomix _Comment=Molecule puzzle game Exec=atomix Icon=atomix-icon.png Terminal=false Type=Application Categories=GNOME;GTK;Game;PuzzleGame; X-GNOME-Bugzilla-Bugzilla=GNOME X-GNOME-Bugzilla-Product=atomix X-GNOME-Bugzilla-Component=atomix X-GNOME-Bugzilla-Version=2.13.x atomix-2.14.0/atomix-logo.png0000644000175000017500000015252307515620365013006 00000000000000PNG  IHDR+[@wbKGD pHYs  ~tIME6 IDATxy]Wy/gyVwjI,YXɀ 0ƀcbB&Tg!"ȍὂBB. S/ExUN1*b`ٲ-ٚRjI-tNaXNwKjH>_{=~ַ4a kXְ5a kXְ5a\F/ 4a9rd?Ύm۶5mٲjLf!,Qʌ龾/^ 5"C=7]644ߵq֭[K7o.JMMM X*lvWW x t'а]su@ccc1app76o\ꪫJV*9rc2*lvoWW q= 5"Ν;;ZG LLL|aǎuvvb``Sk֬)m۶maƍђ2c9Ѹ 7a [an{~chooGGG5kUW]y 6,J1b \ˑ5a [aۻwoۯ޷o.1c( hii][l)]uU+xWζ `*}}}<ְ]c+KDD2ʖy߽[o˿˗>?Wް5쒲oC 455|3c`o|:Kְݻw˂ s R஻ѣGk.<#/ܹseddX,W^yV k uwygVZ!J%TUA+6m-܂J)x}fEDXn]~aa!9gAuuu d jXVo/ߴi,Q* 3g ---~=܃ӧO'Ŀ˿?)N89H<) Jl6ZrLP.%g jXV<_⁢PVqiO駟ƍ7ވJؾSMMM B2R^HX5yv蘾Z6 A@WWW:-Dʧ-_n]*MLLرc}eYLMM5kJRʪ2k%$V `xBaaaP,sq^8iEj5]]]?qU\.Wr~w}}}^ث[MMMu^B\ASSU*D$H]q j9ۡC>99ٴwO?]; G-;v Oƹ"\kڵ[`Wdyy\s537ns΋\pWWWiENb\.7߿?!oذbGM-f7 X]xV k<̻oosfMkBc||϶oߎB7a-oy֭[g Bl/x1z+0\U*;v, KU jX̦z{챷~;~RJ={{͛o=rHg3|PWW ]O\߶m[j…xOqKByY5_я~xG;\,_Skb;vғO>x~遁SJm||lP8յڵ+!wwwCꖭ]3Vc!vi۱cn۹s矯T"\s!&''o}+ww'j]]]+ b<&&&VxRJۗPP1VW9vWokՋԦ|]}ᇿ. Е%if -% _\Mb*1Y(I+ HT__ۿ[[VjMǎ2OO_YN5N o\ʑ!CMFJ|Ia )j %}@ .@s@Ʊẁ Ƌ;jxt cbYWVo,4559f]vz_gg'VWذaC^CCC&kׂs~!k{֏]n]D\gիW7U~9mll_|:gli^ ilRD)IҩBG$%$P$!PP3lJD Av)CWqk=]?xqqPJ;w~;g?u !GRssDWW׹p666Klݺ|vI)qԲnꢜl goYjܺ YHMrD|]-?$Ų4`1 )bZLjR112nWfXP'!!aUֵpl?QN0o899O|'?n !HAgyggff"ˈ{PVuwKڱcF^SLu=̞~nGy.P1޸*'6籱x EhX0Ah ?ҫ|2@2@ $`I lX{fBE0knnZ7l`bbSfԹjY6::Z7ߚ5kA,xl. qPA.{ꩧn>0裏 n㫯h¦vO\O v28@>E3 `@Y"dHg!U_Dp" ޽.3(Ń1+ /~FfffbBDrTΝ;3彽dW_Cpsn-\.:`V=7}~z-~# k[ 4HA)XUH2h1,=Ii?PmfYat`w()d0$8.eNU hEZ7ͯ ?M{VZիW_4q}> %ׁX]o߾~w~g T ٫X @y`e]?pQBdk qL- Էx":ԮrjBE㟎1:WRj>7Q899Y[4_\|"¦M.Z7z1V.Ż٬I@vy?~?? Tׇ2 X=Ϻi勸̛4b틻\gHo?qS-$Fhι|7Юn;huaK,g~~W=PX\U*KRdn nmCfMNN^Joo/0]>W"|3k9nsWЙSeR Q2n>0&)~ ;ibZM@A͛hxFkxUO()>oݻwWr9\TJkfѣGv<* R\`uIw}=iegy4P Dp@XOze1(8%KcQ v, 89e\Fx ^-XNg>󙡓'Ozf9(! z^fq/0]>W"?oZG#Ɯkf9ME,>{fQ",E[VA3<S<.Ϫ8.JX*v-X{׾Ub\.77כjqf-={R֯_H 344`V {l߾}|_]/>veN̝ *_CXP Z78W!n>@q?I1-gX,6黃LE\ۗ6K+PT+JJpH&Ji%@E/kct%ϭ^"f#ck2- HgRA R lfY?{gϞRԽR.sǏoSSS0 irr2y\A Ɖ'R֬Y'q\"׍5Wޛo] çѝc`C, Ā*_|)cP~`hmo3"?E8JLRa h7 fњϯ77JRG\nT*RԺ'HѳEz i֭[|)J5ιF bۄ-Ғ A'Nҗ4<7xKks h`c,P2ӑsǬ CUPZ%WI_$RIuQ!XR%}1) 2iH@#- I)TI< SM9@KВ!@-^B__|>sRʐ10d~.[0 <,⪫眗 p .+qhEk dFGGӧw܁j'O+3 zzz#+"l3ƚo=OX;6d$#xt PY̭cYO /B/=PɎ-`PR)5J *]ZI"4LI²H& cXR RVʀëz3xtV{xm###sDTPBٳ:NrusXasA8 \\.`vȑ7?c-ЇZvݼo߾]/.f9V(aÆv>u͵H˗ePUY+ Nhv9vf,IaU:-I Ӏev Bәif<"`@nم?݂pe{Gӣ܏;~Ї9%L&avjj* oX`S7ߦMe. jA^4m||mwnv뭷=39Ky晏=3YG̣j4EEY$  h,TUxk;bPKEu1yFmFQҠ$c(BL4}\]7Ӫ >%cB V]A,ÀdpjR믿}˖-H+M333{{{W4z]JG}41z&V 3th :O{~wO"m\|ݶ1e333صkWjY[[֯_?A1fU/`uk׮{ス7pß__˵ - &Z,N1O[0*keӱX{xk1XgNJ$+Ңtd{)Â$ ThT,B |B@vlܽ+l{iWs .|K|;oӦMRJ4޾ 3˲GhDk׮TwwJ&YشieUk2ۿUoy[6>>~Q:1"<7 E$D+#Z,l@lՅ`p5"Mz9HQmӌ p)]P#KIBfex]!d* ȰQ4vVu 'ԱT/ aK''Dj⾅}k֬ aXA׾>}c=^eL&K_3%ljjov[.L8Mw)[U݁F5'N *? "ڸ[n {ڵ9 IN2EWH0HY~V_=7i.YM}z]===x c A^V_",bsbǯڋ!`ܹY h@{;Qh@.ׂl Ĺ,̣R)TfObnfs3kd!\EzT_⾏jV< P{qt!>%` D J2e9u8 [ԭ#R:=pm 0PIeWr<@ﭷ:ĉ8#\GgOƳ>ZӃb&y;&K`b~{z 7|چ1|ݽk?ݽ#hn.yvtT hnFwjpLMDq4~M*ݷ-037k@[1¸wͮTڏ/ìԮMixTR=ԣ-7c[6KßNOW.2o.\L3tN/۷[֯:u**nwY[b?Oַfлj=݆֬uUEݬ/ `)0R%AyJճ]ZL7Ŀ#f;M ja}/3Ǫ,)W8A.JBlگf%EtwnXdYY; Չ'3t9s&9_ю?prW}=yyx)Y<{o;oK嚱fXw+Ƙӄ7I3 &eP$ /r!A@ --JRzK4# Zne$aY͊{$*FbzxA'mlMXY}4WhjO+ C<#=|"1:;;תj.6MMM܊Xi۾}{[ad˱akާsĺht@%y IDAT](m!A$8,zYyr8^)lqHHL*)=64lRv])BO sjc 㹳.خ]z"gܹ7o;֥` wo=z"k7%/]$PV71_2슈 Pf @0䨌 /,wTUi`07n*]ٻt+.yg+[bIhb;T}zzSSS//_IzGm۶|n%x=y`lW]rdbSL1 cȲ)*aYPX(諝tB+w!1hV^q>j! tfYjh=`ժU+s>R⡇J-c[Vz^`|@7W7FjtH1b1vAdeVZXgBXcik"SVe_^RHB̽ 2/, 326?yi[Hzv5׬HP%zݺu?7l/Znmxrr21u/^y#2cQ1=@,PٜI5NT Ru%!l%}R$d ձvCDMʄ{+S-}j ?)BPavU DŖE?Z|]ܺ;].6}d;v xK^rVWveھ}n>6wT1=rWބ@7c3!9 qsLOܕ1:z819tTUV40J/*ns bQzP %d2/j@B4w2L/!cGo! Ubښ5kV~1m۶U.OO|/A/y[n+yN \3(aW>ӊU7U OXfXf*P'AJH'˶#'c&;G *T&>J RRBӀ&m%U%N0T@J[n1O&Xm9lذ333Z@N{Uf!EkWd*>i2QY';1~,B$0ұ*)[hc'\ >e‡iFZk 6Ɖ=^k[e2 {l.6lE)kM]NDpWqfCLi`Ź/P匥HZ@WE:&ϤPr2¦ 8@>;bs 4^ ڝ:E t46fS퓡t_f<đ=E.}]{p .YXl-A?!BxUY!"vQ7ݢvujg+3-|>C N2%{e+Bg괿!$C!01*w>U[">sRǶPJdj?)2PPS<8$O& "n vt+iu: >(sFDRH > \1o.J@iuEVͭ=x|*ҡ  DEA͏2&uݗ$@Bt>R#$$(@J+iųiRxLEBmL,)aPBּ۩9YcA;$ȄBs%_/_QpHu}g ;vnwQEwZ:B 023o\l8%*Ǩt4Wat*IHO-{8Ah6HIX!UCgJUeկmZؤD}p/yDb|5yif]hIݻ7,oFkKW+P✃l_Ƃ>@`{@(h2*:)ECpHŲ(hCZv+} u]y' @(B!f=[Z{1U`̝N{ؖԹ e:Ӏ@6 :ؓbar J J(˺PdAuUD*&@qreq|ve H4/P9@)u~;d  ˰Io{ X<>2.?Y:8K0ΆY`rj׮]8s&=^Ёra8lB Ȃ~@U2* F1 hdFY,ʦρ+TZ'AdDݭWJsR]R3v1ܾ@޼#&KeL})j2̾QcȦkϷ>˲ {8rlF[[ פ*k(%B! Za\N8ٹ m K1O{,4$B 2@CbVG[GV["BJҠ"L0f Mi4hPf^ McYT ׫.cB$)55 NRʺQDUFցL&\l&l& 3C0d9IJ8-hj xs }eH]˔p.R>++O+E+w%څҭ?ٙd4_g0V \w1偶c[Nϳ!MyD{{bm.K}_ڵR?I rdۆ3gqht#,{ 5+jn)h-J#35\4~k,{>GY,HY0/y( EǪ SweX'ۊW))OF\@;-aW_}y177'Hd2yڔQb dt{hIcLhT *ΦR]@/T*=f$E:?huAg똲ES+,B )0_Z#O&d,볛 0317p`8b BVҔȾAWo]!<B bW$.%e"Ve6T=4!Ig%i&9q5%a54 )Ł >k 푰_sX8  \ 7o:f)hjYss' VM>I1e'THgEVZ[ beq݊{74*i8et3IDz!u+ߥ;W7PR1xѱ=k#ˬh<4 `Yac@&1]-*ފ\+RlirǶǗƀӫ$B UMϓmZ/RF"k*Ws:J遐\]4@Fҵ(R1,ǜ`&aW-Yuww칔]--(VCA ٠ "`Q3r,g1ЪH.i٩)n"N>PӲ- TQWPtw' a'7/@St]TBba,^ XM}.zpŸ{HW$-KR(P5)yLfz<ۣw81 %Cy VHt\? UZ s2T@(d t,,kyLF0+#&]eY,gjYA_dyJ9d,t{MB|0ŗ_nUۗJE9BPo@᭯>e/l3Wm\fzM::5%DRn^0îSS$X*nbnPR3tg.K*:SO IjeXxJj*%sK1׭h%+ɲ\BQVPߺJyԲ|--:8RҫGU)(dmMB0J=w\9쟝`H?)o*w̞Vtv65KJ+ebfJ ja@6ܒCqhjW,48iĠ*Ejr)P%| [ z@RoʁskWh`#хt5i\`k4"45黂*_F2w] WL)$ኑs6(I2 QL*7L H hKꘕyJZܯT>ueLtV/cE*gUd\@Thkkk;oZLjj\Lj&D6T3}U ƁtZ޾UѠO4+]@输HѬ, HU,(rVbʕ*N&YU=1u*Y2"hZMWw)ԕQHA'r3XXAJPHʹhL3X ]-XYS,$%j =di{~! |) %dzϜ4p}H1@өpcXjVRa҂TJ5!#b{cZh)'D' V*_z{{ j]<[V*ņir-pQ7Ru|)Zm|܋bOnGnf?OQ]w S-_!-M\@ȱaLEYV0v[*;bK^0fb$Xl 2\=bdXz$xVe@ 1 Ru!X ׫ FiVf}mHyIggSA:`9X -Nk1DiR1* sFBXi-3օРcÄn C#A{2I Mb% "-]o*YsOh[ЫI)ì:@a]Z5K%Xberx. cU$QJ |衇vu|qP|ʴdYeE\̊Ŏo/aM-4FeBb5+s^e/`s>.`=*I';tѻ#Z<їe?߀|Fhm+X7N2f>0)E./èJmʸ*% |)%jc㧱n*^dʵZlnٕ^fj p 'NP]m4 `Эx".!ΨncW5i9+ά"A1Ve&n/=W @y{VaN-#bhw8?j%Dy!D6SA&(, 'E'S/ JX}ȇ@JV5Ϭ[adˈP' IY^_TlRzZܕ#zl3K ]{d4:ԁP"L*ajig 8~,Z.5ؕ ZwQ,:9AcXd@ʴC?X}R\>̼D@Azx@+( 1{,KMw]T1be9Ӏ恐p5VQ1*8VqrYx2}}}bBQz݇B\ll LAbCLBH|\8A|$ӊkWq2*TgMfX\݆( hLOb.'")_[w4SgA{/8t3Ϣf^$D>3Й4(/T17Wڎ9{sCǸ< ztcaz K6z  JDAKhR ~zyTbc{fJ3+4qmIFT"TUUYhYQ֕Աb{(=a jF hJK.O'_(edY`2'ľv,Ψ3J>F@4V u|u1nI u]5+9yg9-.cLpW?4tQz%dwlm׫`4gt`DdBHMMY& !gj E aW*tϜCoo21AJ/e@)ͬbW\Ctu"kU_3z] JILb1RXu.ZcWYjƤO-fU=e|%pfJxaˏd yoJ+W N>d_sժ"J+ ^>+S(J@@RB."BCcE+R,K'7 pHPT #;Y*s3,_^ׂΝ=#A^842Md @B@u19C T&/VU) P) B%h> S)c@EZTrU`uI{X~=֭[BÇSVjy3!<*[bۥm wYv _Hӧ$ߠǝ0K"ykUܿ8XE@ JjBPVO} ӨI?R" TuVӝԍW`RDfe,qu ]+`h4, ]Q&]BJ 0B(P1Rd܌}TJSgNeLeF=1A }b cO3+.XPBY8 (>fahh۶m͛qW`Æ hnn?cu[Ύ llٌ* 01+]tu&AG "B&A60*lٲ>0Zә"јRBl2;VuQen> TQa2LZ1M8AėUϧ,.8yЧ -P sbj%IE+sm:VS`%@PT< BBEUE gV#P;֤x3b/:*DsS XUK.$$_\a7L@j(W(`R>ds;2z01_! hnqx=Nd)FK%EZXaRds3/n dEBFr=EfQ~*s ̼хI=݅BH9F 2@]A+8t\mVyЎnUiaAQ\7* rtXd9fa xAwwiU-GDz>3[YBll`!PV @%! lMJI$t.|mS)Qy9N/ȗ_YW $6Ѱ2C@CMz\P c7U1ͪFz 0,1Q "Q;*: 1kC(+Ψ@x YeeW6zV6!JJ38=uDMFKs;ANY@e^qVDP Q58 J[ n)z^N4HhY׹in`ZR ^# SH@)-UmVt"n i Ei8_!O  3E6^[+@E q2! R~Hf&Zx"0S]w̾#5x ]\$aYVP,wV5e}:RZ6DA͒#],tu[Om;y)ꠚ[0$cO ֪TMC[eϮ)i5Z%5'ѽ6ٛ  5AW,\Ciĉ)B{H1+iR>hZ bP@eDz,@Ӷ1ӯË&QK c@׹$pb|f="r#rH9ВV91Ht͑o3QYFu}B{ 6mBSS8Fgg' oFVΝ;g޽8/e1s,rA&c +и>1ω!n` -Vϸv僕Hѭ^"Vuߢev-YR/sAor#T 18l X`:S';1yl{hL8|DV jښݦ;5ùB&!4Gk %"]j̯ѵEZV4+󫴏:pYV"5EKXh@@Q@E d:b8yyfd.]1}}}x_0 Q.QTo>ٳO=݋ݻwT*-:sO [}3ծ|ЊE;a C;%Ѳ1|ve|tyr &j3W h1*! M`7cwaXƉ)h1깃yl0DtYUibb ]EtYY;fYY1.˦*:#Ӛ` ^}\c +)cZ"G~>Pu(-HNJ)R sWGg~fj)\%3<$;vC{aF,VQ_k-5`MƇD{{ ֯D^ijy93 LuA1UFZQ)ݴ/Śiܱ&TYYF%IuH+3$U' ; Vöm{i8ٳ\3LNp%L|O2 zdCnu] ,u-K,`A}X7o:ڕ)N:U;*!?B LhT@EdލHu'-PCъB>҂K#;xm$VP>2ήVs4 zuZ[0~Q 1U:ۣ:ņO`MPJNXwغ 8XIBqвvD[ochuڕu @y]B9ڿ/|Ӄ@OH@?]\mll58_r*ʙ 2լ8:ܹK>N. ~z\Bo('AwOҪ|2(HyF+7,̓,;z_9.wuuU/U--%$`l3o߄<0c3#DD<,`x^`eB-]TW^յ#/s"ffƧJ;{+6ͭ@^ РCKZŐ݄%A LzN2Җ姤9V܎$c9+j^pO5T,9R%pd6RW߅g]o殿H*]Det:߅(zR MM"%ff0>>Y TWk ^C3%c*f\xJtnL`bQn7pCΝ+,KҶꪍgUH mcvdm_Jȃ<" mH7q {-3jVc<*d~;I(7屼2^d?Uh{E#.uLL+8ju9wkl{r+IJsX^Y ._k0ll8)0OգҔ p)PrʓV$!8͊2D7d)cn,3'/ lUH __7nuu`k=*{RCU;3'Qv*y2<L9!8byz'U9TI L<*s(8zxwkah1Tݸiuu=w;vlvtwn:67havvhnn'0G T@HI^$)1^* bl|HWI= u6'L< ^PĤ:Sidd䶯^v tXˏ{3=kczc*.8;T2":UOF=T߽^|+zR5R=Kg@^*%Y jj"DDj׼Ư\"f=у? $fgS@/Q$qd*@fhXYY oz:/1<^F7POr9FEdk+{}|<4۷yLOڸZJƼd5lQ2MdiMX c"? |5*ƽ&37MUDW'N4I$IRب[BN>Ȏ&D qDo{K ;6K)qӷ}Û>ϿĐbu'еečIF::/4kE)oŢ +_f%\Md(ɇc`c}%:788\nZ7Xpy`e '"eY+ 1 w9ぐIVM-#8JBqi}1O$:hX)%_mU]UN uT?s*Ȑ36jU7!|@YO6^N"(!2u\\F*^a u 3lH<4ɝuP̥V 81eq/N*{}6FeX]Λ۷aan5;wVZ*ZI͸j@WqMthyRkc cLMJ̠`Dty:Ah}s&{'JqYB0#)U!hQۄp1+B'f6^qu|X[3_‘{ހ(o8o)-̌ؓ"ܪ#lzW$SIeE8D HQ 'URRsg ,tBSG{ۆv :4 >`sJ*3vOV%*U% NnSgj@8x+pmЅD9CLN4hˁVKՋi[L%(Tu_R~>]<IEƈ!ĉ@ww ?ajz3 =-]Kq IDATOUڵ!x]8r"됹N Tz E@ VV%. \Ycضc'x]}bm %4-6y 9i%qZ/ jǼp7AW2[QTUh>%48ܕ~)?CuT3%QY 74gųJTd_AE$ y-gНo0P*fL{0sHNQWq̗nA2L . α$+J+! ^,'OU%.]:!,֪lQ=c'ԺG1x(Us4W~w~aݻw?Catt/e\v,ԫ=N@}L51XD>qP((7C^+b㾝 I:I؃*+92d!.V*5[ @$}*ROע@eh}cL]_PincA)XTJkAJG^(Bp| fyfؽCVO-`˜ӟR;n*q@I/Uju;vG@h!˴0;U RJ,..bqqgϞ?E__݋ 'Oāpюd099Y|.l42fB%nVQs%jl?@G}8Ͷb^#3 !;jGIЬIkų :Xq VdVqZ9-X V}@Ih q)+vVoxUh43|34nݯG ֿ$%ҋ_AnaVC֤i}8)˶ YI菂9 V._:xvށ'@Wπ'$jq5HVej`Ԕsy)HU@|j"P;A*4ll9R)N14ret]q#. Sg VmcؾapCG@&@6 Ks  b!4U]s=J(Aň x#)b݀@c} KsSX),-LacmiF~yRx=?]$5XC% #@cfʨN^T=s|T倫he1 EU',UcVZ86ƪgЀPTGB0zƻR"ʹJHEozCR駟ŋJxKX^=~$!ROՋDRzc {qũ\y!:M)պ]guVeTԐcP:FCbmMb}C.ѐ6MZb;QA*D H <,-%)ZL chW78FElWl!M[f/%qcueJRUdT'MY#}J9"ӆPTǹ() `?+)PQ"]j%+,l+9XQ 2|YЄ{&fwnlau'<,YZk) :_=X]4Im7^8 G^qD0!d{NL#mGE`E!nC;8<E18OTţqXgsd!K3d64En!Rd6DAehX_]Fcc+7決h6nmUOͧ!<7!+MM# V&z;[-Zs괬[+X|{'IZec"oK!XlYeE>*1Ǒ@"D^bg7nWΚe\>U]?^C~7W0u4fƐ;OjW 'CU#҈wb1Lf)n01v`C޳pA3b(ҼT8JxDdLB250e)@WQ@f;sPǭ&Zullbey+ XFV+* *0⑖| X8l2&Be/In2!Y Y!W答rw\%1OO6`!D~3|-O`ffnp{04wV.cwB9֓Jb{;e'32Q hl \R#O@V T"߅24jhf?>'xc5T9m |R:Y=GOCD $FGqUwSj 6i,j41?1˓65]QJU Nl۵B<S w"=ѕ8@%y*蹣w-dfHR} _H@fR|r(K5Z !RZXܸc`NDw'3FLL2 ONc~rKX^X*23-k3f@W*ݶ ѻ}ۆ3MqLZ=r҆(R"-A1p(+fiwD:J)&)9Tfj@|NؤTTgK R Շҙ-TDJuUt] 8Qk-GS@r'Z+8&@y^o>?/ࡠ*BSd/3_(BmV^ l * q&4f/EAk}o>]4yk[qDȠvPHS .(eUAک$yU0 $e۞HP{*<ǬCi"Hj,E+$>q g /;w)1зGb^Z L ch7K3|ZvTJ6nzvn@*wUf`zȗʥ*Br)TG V]^`պ*TnU ,r/Q=)B_Ƙ]PʄRu4C*R~0w/^0~*{E\8s+ջ{cx=uLjQ[*wE$"BAO.)@1BOLOF& MHBLjVZRSR<˘ii 15L hݵA/@T4{͂HTGs̠&?+ `I P2qQ C̄B/"0U90Ѳ< ShHKI䘂TY<бN£~sVw@LDzfPoqƄU/ϔzI*jTwCqcW.]KzisUbLIP##=8=;ݧ(4PE hiJ&R?#FT7\2|Ml$ dҬ#] hKEF<jY<eQ#RDI!IS **ch4X^^iLNLc~v sKXt ;$I bێAl0]u$ xj(VR",AR%( 5 k `xbp" (bFC^0L< |'O$*+kt,%k7OIs=a3d:]$]WBK3^((+-#Zdr4a$#a1}}"mL(dU񣹹Ư2@)Sp1[/ysj`hxy3 b Ee~V "0 *3`#wNQ.ʄPiFz0^ 2zF"Ub{ʤ76h6ZX@NdGJUH<Ԉʐ"[HL DRG)v;E$8xAeTv:q=l\0j K\ضCZh~*hԠU*n %L+Hefz2Z@Ih"k+U/,(`Ъ#SgpVorͪNBox, 44 $Kf M аfj`XQɃewE8,:z mtL8ˁN3Wu(SYhYDIlB S9@+B3!3!oKYL$ez2$ł=y1eyy''9E"=" eJ@L@B( )uQ†R HAKIdNsgB€ DVGgY;W?_}n|C l1ݍ~+ jS*Jey4 {ɨ&@ `,f7&iY| ~WŞ;ov4۫&dX[[ŋ %9t _tߩ$9|̔{\I[Ǣ0Rvbڡ7*28EYܜ3gf`)TÉ2A2-)M -\ZÀ5Y`~ FDmc}&r ) oZsP0 %ii-vk=3FjZu0[YtV3HKx+3L|TEjR,i9܊ԓn\INc|6V 26p)@wO~pc^mzw PU[kݽH*U4Z!>':ص4{-!*iBIa1jS'x, bLK8u/T'=FrRzR]p^H{vC)/Im,(бuZ[P7n~XW u**b~2y(qӱd)a':lKـoHKZ_ , Hrm*IzTMT_cEp"]Jj@30@ )邴, ;ĻF;*v < ۰}xï]f'JQ10Чµ{NRIު @;x6'܋RL̀<`mNe@/xvfT5<2[h2=wmR4K(sqPÔ@iψ$\cIˋpJzP߷w-}~?bcu'~%N+ 0{Yi\j ? ZR =" ( W JhEL'T)xT6{~@R0ʆyFe*"Q TGӯ4D0;)G{AH\Yx_\&=%Z#cFgi?qUDYF#o,Ȕa={T /v1KrN=Mw8z/D]3`b$ɤГWzIl7pqmoX`DsA# e>+ƙ30z@q }.>n:NvTE9@JDqm `vaObpXB8"fMsUG 9X^˜4`Q{L 2\Iaa~!(,׮3n)Je%J IDATԩLKP:ursRcL`\!ׄvUFvS94pp>Kȸ 0q2r=;}iʙ܁M!>.rJE2p !NAxy^\JZۉK8&KS*r̫Z{YBdV ayy;`,r&j8htq wR1cQKFoQgUx*WH9(jKeZM9_/V X@*F尬H‡.4Q}2cA=*a;h5#xwN^} l wjoe> .P L$eJ^\^Q2p 92PAMY߂|wPB.+y`Ebi=&8KS[mt==4j*z4z.FJJ| Qna}qG@8Q_g 4[+ފΖ 8(bl|+21EĹayǐ9RfSkZ>XeMVV*Zm"I\ֳBսӢuBIB~ICJtTzy)]LlZ,1؛edϠ4(owN~;V]QTEk[UROga9oe/R;;7aSL-X `NLM\ƅ>m`k3f]墄.c2q%*"|5&|)FQ[ZZ=NU=- AKvXiYѼ1@/R*$x>TVi;DZ)h20Ӄ//ȧ仪fgkH e%,LwP Rt!XphߔBpi%}u@iMܕXӇs3DpCZ d]'05qsװ8C;1t}l @>yN# '9_j }<,8S9,uj12&yVSwŌ8J́l~ʃ_g3@˧xV6n(Pبya̪п/=>`SQxR0%㹓$w\V mV#&OZ' u bs5Ьe5$|WϕUCXJ~-D[ͪmX'!ZM,-hښG*snK5{tpHKeU+#9i0ƕ@lTe >,BpXhˍ)((+7m7-UQiҀ9:n-4S%^'0?z;y5PqwT yGUSh~O2`C|:1T/rLSSn+{QY@8M-9?9_ޮq&\kr[RRU@N;ΪdžzmIRgz04 sױ0=57$ʨL|ܡT2qtd`Q`a-`VHS#ܓ/|l( >pM8c˖S-PrvX=|p^X~a$+h2k9D`u ̤ o8z1V@ynuzm[2VfмH# c ˘Wws17="NN9J13g[VFy UBJ7n)6wZ㆟=nέ(R5;r eVgE:"Ӈܹu(3ܜȕD3sğlTB2bH.(hʂePLw8* PpUѦ2};\FN!]1Ʃ\?&uFQ20/\x[4dvc QPRUdg޾=R);i7؝s |zXwFwWy*@y׿>ܹ )Oނ *n;0ep/ŮbU9HAZ5,h9R}PQZ(*m|Z^-?gzqT&QqU ̩m 21Uȗg\ }YB23y8N6OLEM \jІ @=;}.Gpq@0Ѓ̏ rev`w-ࡴʌ[k!QCxgE혬-EƵoqP6\Ǭ]jl?PReuƶ Vb`E6ꢔ,`~;YQkȂV>u0</V#vAK/g?_TrF.Ph1) Nd =0\5eE@ňDeJ0d$o=`M<'rǐhڸ<~cqaUK:F:"h7@K֯O.@0Xs)uǸfV2;ouV5)u;˪%ɤ8Ǟ;BHtZ㱟x' EF]˃G|6p{qS0 *][I~4\ͮ˒Eb+Q7S]Z_X%~JCCRcDj8/{@psTKKH9)A-CF3)=N,pGT @J;,Hc<{*kX'`Զ&țNe&rFTT&$s/҅vu fӽk޷y;D."VR.#{0pck5KAjEdBzgeQi;ԠgJj2pxY3`,ֳ6] .,9mm۾b\pՙ3DҪ$D"M3@@\MN]W:utyq/>^]{J1OP m,48Ӓc L/LIlmIM=yVmzx:{x>jserPI(Tk~`OMD^'N+А: bO@ sgu[;GTJSөX)Q8ib}u+;?gqi*.];1?o+Ń|q#$H*ށƄ!Vٿv@-,(gfUOaHJihbn~{^-DJdeZL9c`e)-槌H9-MT5d-Qsܭ!ɨ )ڦ̏M{O,&zhE,,Įc]/h+@+UW!;xYBZ[g߽:)o{)zjPuꡋ@ZShpRY^\We|oS3/VVp滧q滧ۋ;O܋~w**".j([TCq"]`#j5 ZR*2 *T fh4V;խ4Kem4QaD%@% `S80ԡ2Z1]%ǍR^xv\4ߥ3/+cd爧Qu:rbPFZήJ^n{/+9qG Gq|Z{'#]* -Y:GNVR V$1x;cLb*,;!"h3} 4&.^tme|I|ơ={"J*jHŘ( qk&Ԯ7 \3dn"sKjuQH:*3{c YbvzIq`fv8AcD\Yp  D͕yUόeey^g !Խb*oU5QE1[g}vGJ3B`kqzpǐGOye^F; QuŒGI̦iaK4RNտ:NC-TQ&Nm̊ѽ찴tЉjZ6/_a}meyF^|滸:6WQ<7Z bDqbwVRV,9hb 9UWhќC eSY,K)`=U+5u!*$U$qI@+bzG"|5bZ7STgs9&N~r)<]+v6IU^s̖f^U7)s^%q7%I W6O?S?{ w?8>(,/ ;{4JrJ2 ,n8DF܃RBf7!gb<}g2N c"cpqC4+2jS1ЦSf.fOe\Ҵ "- Hjs3QQw2BUqZsw#ٹ1|;hf]T 7.Y(UGBk0k8I'߄T/-pf.o.؁~al4jå%~ԩS{{n!Icees<裘şٟVp#"MSĭ6JX bVBUV^>}eS1$Iwömm[1;;K._"v !p{'>1 ( GHqGUJc@{jH Rz0UV f&'0}}S.cfjאe:ĉ'pn^8\;qE-f̭c7V95m+ 4PkDUc*".ZզܖRh3nHJSkЦy妭A|eZVg(GU=!|Ye|t&s{sM5ȶJ7oXX_x!+>կ~Ys53l#\YZm6\!mt*:? t_3צ: v?A]tՅ ٳ'>k~=JQTIIڙp `ČAv Fk+I,/C[$*~i!P'ۃuoBNMMGҒWS)TR(Q0ӛj „wJg'WU*"NkdQTPͣܖ;WF^oU'O`EUAY^(:D怋VyL\*V2Yeif;?Q:wΝ+,SZAslaj!uo6''KKRbvvFczرcq)ӧuf GWqRA'JdnC朇$Kن]z/_勘>XGݼiIT!Ԧml6s}A5VQI*HDWҀ14`9*&ܝ6!}.˕p+e6VEeyGṶV\Kgl@evzʂ$RmA-kXQ{J5*.^-SN@gtaO4>OTtA*yLNNZq%iNG6;wG4̓1|׾孨$4Zh5EY'~D{ WL޽{l[<38}M{=܃~8qfffl6o6~pio6Ο?ՑBSp]H+XM+X28N ,ϢvZ)X1r꟭ԕdH%ju3cGe^̀L7 ; ;>cuݓ0hDj(vMVE :^ R ss2j q)Sx1 H8ܞ̹טV#j_#3%!U @fLiVsg/9J |n+^?>os~pI\pA7\ 8__?ygf_g2늬$WWAH\@.T1::۷vN{evnv]jeXY^A3ic#ioWqewfNeuw)ɻ97^*D`ME}65]T͕~Cc* )cפun<@@HAL2 .4@]YvVd^YVn0`ex;вez'L*$M3,g++~CVakZGx׻ޅ??tENЇ>'N`nnMQa޽8tr 3XܦMJg5}~turKmXp!8p> V!"Gg^ߒX|߇n*5T+5Tk+߅H)nNiiw{9ADI l<ѭ A^&y[b@7;Ht:Jec:P)8pW:gw7;֓<;Íb)>xFGGqg=zw-e&,_ j88N z Y|FӀ )%sYsf`$G!51nQG+KF|З@p]U>@e"9DyY/DIWۈIuD}j*(㌩P6^Q(P LV  K3ccKǎFB`bbG<Ʀxߍߵc Y4Yz򗿌}ch|||Go}[KU!@o{|?k_bdՅ~Vșl8uww;^CZ^.%]Z-ޘEvضGO| 5[M1 q`v~TBB MĖչyns2CЍXcV}(rJA2`W*, pWNA> 2JR7)PҶ@Ҏ>x VVV ,ç?i|ggy߈o}[x'l&_j:<~~LZ[[5yͦo~3>Ov4`W/I&"c\tɞfґ#Gry\e+3[(KiƷ|͏ոKg1>M뭤=#$Q8R`qeH͙櫘2M,qa`^9J\?Ԭ&Q D Zԃl,ȷ˶DKu, L:!34-LMUOOj,oE!w]رcWnW3_Z?A;L {I)''qckvL׮]?yz⡇wppǏF>駟>9<kҴx孯qrqT*9~ն2if~<n6^5_$N AmrSC`6ݑפ>sQ30FKI1@m Y]TH-C2OQ;u9M} 1t9L_3 {:VW ;zΝT*uC9s o?c? .>__uVVMzrM$7`xxzիpoˣ(֮a}`XE *WωK99$ŽxTnGsKl\S B..r`Lҋ"6}c!ݰvz7ӧ(} պTMbե4^2ϴ6mMRCS[XA]-v@nt ̈2>ӯy1uN7o"B)u:3_-e!"!FCCCF &O1 TUy !8p`Yeeew) JAi:*9Op Zh EtWQNZ;:عs1W+4 LZVFA a`GXq^ʺ>pB,YsqΊcb16شi/,,w hooΝ;֧ef₱/Qݹ?…^n{ ],hllZo;|IBPvvvc}8qbHl$ٖ7i\ve6l6زem\.&MV FI";WTL1,e1nPT6D3X>HÉ 6 MBV:AEhfK `hERa] Y3]44ned^04o5Fs-uBE;> f;D[Cvv6333qM7Gu"===*Β8x 6olԩzi:[u("8I}0jԨ.1j nׯm^^G_&Ox`Y6.,Eim:;;q}%d%B0uTKE1׬Y~;j=EQ;h RP-|*4M4eV/ M0S`e߭ǝ3@0i?ct$,^b!z%1x* ! , NX@~ֶ("4oI/j+{EaLUU$>v#%%---/uvvbxcL8۷o;㸝uX/ c"`9y h}LaشiS dY9سgTUy%%%`,eYi|bgܹسgA?CZl{!^ڶ܁S BmXS XG!ܒ%.bZ\ָHдEd2so,Y~ĥZI9vh;R _0m!…Rՠ2 0; 0Cmzs"ݽEX/sɒZjfcNg}۷cԨQu>qfϞ]vq;@`&n"vd$ l/6S\\|Z1c i$?EgggLA4ϣ0| ۷oD#_y桰б?_hDvv<cwlktZ8Czzzm&N?n^\B`GÈd7vm:tVZ~%t%%%>}z5,Xhll3999aNjAVhmmEzzc"---=BDQ{ >ÇkwܹXd (,b~| ^pr 3<uV1 $"61UqEUz4] ?_tҠOu6S w vӎZbYqt/2S"Kd} &US(*|>Z[Gnw\4x/i[D#GUUk.[-Srr2L.5!---Xd :::obɓ'c1f=z4>GOC'- ESuRXuכI'C<'7 nwTvη~ M0 k!,(@0@1,L2;:t(=^{ 1ȑ#1~~xl +RUU{y IVh׮]Xt)Ph[oŋlGcQO?hG`tXsSjN'+ڜD 饈t-Ɏ`!(Ze㸑e+b?MzLg͖)dzK'u?Fu x4!U>!0f .IQ*V:\xqcD30zhvmc_rŌ4i|̈́遐V4j(PeÕ=0z ?ro1{llݺ&3336rycm&ŻVO4o矏[o5nrj}7nG}h_t(B'0*PS)\SZ[fzc#l4+CDz3<,B4Mc@MрL:(+ȤeFdIZΨ8)BZCm. E6AZ:㳪,2IQ eiÆ +x&Ç{={0h `Ϭ`3gn _Xloii~k& 4j(9_~e( -B^^9bzi͛1w\11Ǐ7_`c JdCVL{`*"~i5  yAy R8Ź p.X2C5>.]veGNVҊm>Ț2фe+3:jX5J`coڹ#0[Յ{bػw/Ce3kǎ7n&$P.-- > 0WxAUU[.nE0g(o O87tY+A3 7o֭[QYYuOn}D}}}Xøy睇?ϸ l?A0m4_,˚N|1+(,9s愉vKQ\\ z̯e0Si\AH۷-G0֢i^~e|W'8Lx&믏?ӟNx饗xℶ9s&nݚhߏ˗cq  6O>W_}B0l00'|5Ν;q}aʔ)1=@QTU7|>'O|7^0IؑUee%ƎxYzzzlocȑ9syDW_ s g6l-vС:kk^xaThiiACC;ڵ+=^Ν;Caٲeb<>^pa}jj7x'|g0)j̙׬Y+ϲC p(x'~zZ믿FEEΓKoUU~z⮻:3DAX;vnjcBdЀgyK,q0|pS@nooEE [Vŵ|DQ  Wx%yŖϧ4ݴe˖&MxYUTT [0 RSStHtuuŭu=|w-܂v+lu2/$IxǠ( ͛"p/0zA-[ 6cAQQ~cڴiQoK^GQ_^tEG:YsF`g/Ϯa$''?Ȋ,5.xy{ハcRUwFMM :;;' TRȲ{ w}79&'z|澽q#@ 9s8q" `;|9@ϲ+xbSJt ;v,n|κ_nذ!) rZ|ee>~ Y:YFSNux[ZZ\(qM7m1c#G?xꪪAB'2 &ĉsϡ2m۶aԩظqc>cLDC-[PQQ擄abF󡺺:vvv"E1-EBBNdgcwNsm/$(˲,(Bॗ^rX?KpθGچW\?r$f\#<'%%u,4[˫cTVHwxgpuaј0a222pX/m۶sGGGI,2f͚m۶^ lϣ( v^|EZ 55iiix,*++(X~}̘1ݒ$%I 666,X ͘1/9kjllt9=:,MUUtvvoe㸣nynۭL:d/TlIDATڱcǯ'DݼѝEo~ǡ k&+!񻦦ؽ{wR+0|ptTDU^ػw/U4ݏ}%C﷝L#Ea7nYFhEQUV7|s~6/))8.02p@7ްu8k_f/4iRtt۷uuuصkvލÇ1~&))r<ߕ0(EΝ׿an999dYضm~n`,ؽ 4M#999f\QS{bȑCQӁ)ŋ㪫017Ŭ}A|>x<ǩvk+#<`0GDŽ p饗<,O~G}T^pa;Z[[իYda 0wܡ9rDYIXg-Yi@U՜'6sZD|y> rTeUA!#GTMvMeee!C<رcڈ#8_}Up۶m9!wA0{wl7ܖhϩʕ+1k,$e#o[T[MM y,_#2B,;6H4<~ GV&YE*PYYiFǃ Ltuużg}'kèi?2&MR+UUvg=OӴHӴBӴMd'!B +%\.yeY(M4MQaf -Iщe9E$yG&=٠Pe9;2jԨ.ճ>]v8S'''K/]sȑ={\."bF"55նg[[_>nIq嗣{ŷ~={`߾}hmm5So]vYr/Æ Hƥ^IKKڵk髯:ʕ+ /_/,, 4-SGVg2***ɐ!4M8SVVvtȐ!ߏ= ].Kt\ Zqqa(ljjX%,Y)IxI(I.RU$1&eN<8K..d۷{wؑgj>n <.(0|pp.QhI#NeyTVVqNվ}߯/=EEE=ner:AJ-))rrrDhjjE!,Ӳ,I`0pľ[ؾ}{>; ٳ,y'B;,u]k<$ ԰tKK Ӄn4 ׋d5##C),,rss,(Кylﱦix뭷h"GIKKCII 8`ۮ( ~_`۶mT!Czz:}]P7Ö-[֯X?OQVVa|شiy(wy֭ϖϽ[4MEɍjnn(s88GQɋB~~_~~a4MQ 0~y <WQU ,0*M˲Oksss eYyrAq'3 CB8MxEQxEQ\-++cEE!VC94BJ)!!D8p8[ŋcj:C?xw1uT477ѣݻ~TUU9Nz*0 ׿"--qkce˖ޓ{ظqcBEQXj***H]Qk/3f_577+YYYgKx֓UuuѣGa 33biiiLzzM.4-2 #4-1 #3 #,+q's<<'ZiR,˞a:B8y].[^QUQQ։2& O%E)giKUUJU<ُڸ\3ͳ /uuu d}1m4\qq+*իWclݺo&MPu ]'O=ʕ+ %%%g~u֓Ukkoر4ȝM{<aQQQU "R%4-4-[RhVYUQYՊNxh-''!a繿N9xW\."qIl(EQATeTҰ4MUEiWSSSPχ 1ڎ;|@1+$G?P%n(ɶm+$_UUqcҤI͍;oھUVcU]]RPPpVWg=Y]|ŵ,݁@ $ *$Iʚddd bϪX`O.k?EQy'G<ߥڿ$phnn&V:5EVVUUe90L`РA>,]]]hnnFjj*4MCOO;۷Ν;QYYYJ^ORC[IMMŻ ]]]x'oii]w݅z+n_~%V^;}N: 4M#0 ʲhjB4Lb(J5()--+$tjyy8㸨N(M(,˄Al_MӰtR$''cΝFOO %~hqaa8PTTz˲aAUyWnuhƚ5k YZU*⋄/ fΜ`K,_~5i֬Yaf5үΩ*,˚((:Yi4tiHwwwFOOOd: =X5$hz,FQBte.ے Ж%BhnnN wt7~*N0 S\\/((EEEEQ~aEƥj@ Plٲof9zlذ!#G`Q儌 1222駟(k߹s'*+W,..IJJjJJJ,,,LGF OQU³>T[[tߓ̲tO>q:Qtuu󔕕˲477YYY-#)N%t:|!C< @e0 *((Ţ`^^^nw@ Z7X7Ý3H IXNMӶ$$2( vZ?0k333yoaYViZ8ԟg׬Y WWZ5駟fxEqduN }8}ؽ{w/33ӓ!rbu ), #+1HN6D ,.첟򗿬wu,0 Bdyw~w! 0{6Az~DYᔢ|@($I(i E/T",(ktƺ׏~]@ DE"˲1 ^/Qia6e[9yeYiG#DQ'GEA$Fe*R0RP̋ q.r6AAqU؇S4EQ8NeYUEE(b^+p~X7ekETSU@De!#@^Bj 0 Ͳl˲D}2j&˲$ME(QÒEY4M,ˊ=×=賬pZJ~5`WPuJӖN٢(Ң((˲1`$zS%3 #2 #,+9Ok(ʲJHD[* ^J¢!,FqwU@YGSSpE(F^$bZTˆ!XTUaԂ[? r,=X\@Hز4#FQsssH #>LDNeE$Yj=$tV"bXZqXVa}$,uƍ.}CЇ>}Cib+zIENDB`atomix-2.14.0/atomix-icon.png0000644000175000017500000001030710254603241012753 00000000000000PNG  IHDR szzbKGD pHYs  tIME)tEXtCommentCreated with The GIMPd%n+IDATX  /k F| 0ppp>>>2 61& *'(' %&%  "hY  R5V5*T  o% ek& R!   .6d%$%]/ C  'VK* 2r' A       A BL "8-  F- ,  2>R&4X  &%3 i  G,   4) D4     (5     & @(  0    ,   r   "0hhh$$$  '5!  *+*}}} < u&     V #    e#5V`2    2&0+$B  .  SC WIENDB`atomix-2.14.0/src/0000777000175000017500000000000010404437741010677 500000000000000atomix-2.14.0/src/Makefile.am0000644000175000017500000000236410343721350012646 00000000000000## Process this file with automake to produce Makefile.in scoredir = $(localstatedir)/games uidir = $(datadir)/gnome-2.0/ui INCLUDES = -Wall \ -I$(top_srcdir) \ $(ATOMIX_CFLAGS) \ $(EXTRA_WARNING_CFLAGS) \ -DDATADIR=\""$(datadir)"\" \ -DGNOMELOCALEDIR=\""$(datadir)/locale"\" \ -DSCORESDIR=\""$(scoredir)"\" bin_PROGRAMS = atomix noinst_PROGRAMS = pf-test level-convert atomix_SOURCES = \ main.c main.h \ board.c board.h \ undo.c undo.h \ goal.c goal.h \ goal-view.c goal-view.h \ clock.c clock.h atomix_DEPENDENCIES = libatomix.a atomix_LDADD = \ libatomix.a \ $(ATOMIX_LIBS) noinst_LIBRARIES = libatomix.a libatomix_a_SOURCES = \ tile.c tile.h \ theme.c theme.h theme-private.h \ theme-manager.c theme-manager.h \ level.c level.h level-private.h \ level-manager.c level-manager.h \ canvas_helper.c canvas_helper.h \ playfield.c playfield.h pf_test_SOURCES = \ playfield.h playfield.c \ tile.c tile.h \ theme.c theme.h \ pf-test.c pf_test_LDADD = \ -L$(top_builddir)/src \ $(ATOMIX_LIBS) level_convert_SOURCES = \ playfield.h playfield.c \ tile.c tile.h \ level.c level.h \ level-convert.c \ theme.c theme.h level_convert_LDADD = \ -L$(top_builddir)/src \ $(ATOMIX_LIBS) ui_DATA = atomix-ui.xml EXTRA_DIST = $(ui_DATA) atomix-2.14.0/src/Makefile.in0000644000175000017500000004465610404437654012702 00000000000000# Makefile.in generated by automake 1.9.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ srcdir = @srcdir@ top_srcdir = @top_srcdir@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ top_builddir = .. am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd INSTALL = @INSTALL@ install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : bin_PROGRAMS = atomix$(EXEEXT) noinst_PROGRAMS = pf-test$(EXEEXT) level-convert$(EXEEXT) subdir = src DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = LIBRARIES = $(noinst_LIBRARIES) AR = ar ARFLAGS = cru libatomix_a_AR = $(AR) $(ARFLAGS) libatomix_a_LIBADD = am_libatomix_a_OBJECTS = tile.$(OBJEXT) theme.$(OBJEXT) \ theme-manager.$(OBJEXT) level.$(OBJEXT) \ level-manager.$(OBJEXT) canvas_helper.$(OBJEXT) \ playfield.$(OBJEXT) libatomix_a_OBJECTS = $(am_libatomix_a_OBJECTS) am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(uidir)" binPROGRAMS_INSTALL = $(INSTALL_PROGRAM) PROGRAMS = $(bin_PROGRAMS) $(noinst_PROGRAMS) am_atomix_OBJECTS = main.$(OBJEXT) board.$(OBJEXT) undo.$(OBJEXT) \ goal.$(OBJEXT) goal-view.$(OBJEXT) clock.$(OBJEXT) atomix_OBJECTS = $(am_atomix_OBJECTS) am__DEPENDENCIES_1 = am_level_convert_OBJECTS = playfield.$(OBJEXT) tile.$(OBJEXT) \ level.$(OBJEXT) level-convert.$(OBJEXT) theme.$(OBJEXT) level_convert_OBJECTS = $(am_level_convert_OBJECTS) level_convert_DEPENDENCIES = $(am__DEPENDENCIES_1) am_pf_test_OBJECTS = playfield.$(OBJEXT) tile.$(OBJEXT) \ theme.$(OBJEXT) pf-test.$(OBJEXT) pf_test_OBJECTS = $(am_pf_test_OBJECTS) pf_test_DEPENDENCIES = $(am__DEPENDENCIES_1) DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ SOURCES = $(libatomix_a_SOURCES) $(atomix_SOURCES) \ $(level_convert_SOURCES) $(pf_test_SOURCES) DIST_SOURCES = $(libatomix_a_SOURCES) $(atomix_SOURCES) \ $(level_convert_SOURCES) $(pf_test_SOURCES) am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; am__strip_dir = `echo $$p | sed -e 's|^.*/||'`; uiDATA_INSTALL = $(INSTALL_DATA) DATA = $(ui_DATA) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AMDEP_FALSE = @AMDEP_FALSE@ AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ ATOMIX_CFLAGS = @ATOMIX_CFLAGS@ ATOMIX_LIBS = @ATOMIX_LIBS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ EXTRA_WARNING_CFLAGS = @EXTRA_WARNING_CFLAGS@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@ INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@ INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_ICONV = @INTLTOOL_ICONV@ INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@ INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_MSGFMT = @INTLTOOL_MSGFMT@ INTLTOOL_MSGMERGE = @INTLTOOL_MSGMERGE@ INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@ INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@ INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@ INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@ INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@ INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@ INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@ INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@ INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@ INTLTOOL_XGETTEXT = @INTLTOOL_XGETTEXT@ INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@ INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ RANLIB = @RANLIB@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ ac_ct_CC = @ac_ct_CC@ ac_ct_RANLIB = @ac_ct_RANLIB@ ac_ct_STRIP = @ac_ct_STRIP@ ac_pt_PKG_CONFIG = @ac_pt_PKG_CONFIG@ am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build_alias = @build_alias@ datadir = @datadir@ exec_prefix = @exec_prefix@ host_alias = @host_alias@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ prefix = @prefix@ program_transform_name = @program_transform_name@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ scoredir = $(localstatedir)/games uidir = $(datadir)/gnome-2.0/ui INCLUDES = -Wall \ -I$(top_srcdir) \ $(ATOMIX_CFLAGS) \ $(EXTRA_WARNING_CFLAGS) \ -DDATADIR=\""$(datadir)"\" \ -DGNOMELOCALEDIR=\""$(datadir)/locale"\" \ -DSCORESDIR=\""$(scoredir)"\" atomix_SOURCES = \ main.c main.h \ board.c board.h \ undo.c undo.h \ goal.c goal.h \ goal-view.c goal-view.h \ clock.c clock.h atomix_DEPENDENCIES = libatomix.a atomix_LDADD = \ libatomix.a \ $(ATOMIX_LIBS) noinst_LIBRARIES = libatomix.a libatomix_a_SOURCES = \ tile.c tile.h \ theme.c theme.h theme-private.h \ theme-manager.c theme-manager.h \ level.c level.h level-private.h \ level-manager.c level-manager.h \ canvas_helper.c canvas_helper.h \ playfield.c playfield.h pf_test_SOURCES = \ playfield.h playfield.c \ tile.c tile.h \ theme.c theme.h \ pf-test.c pf_test_LDADD = \ -L$(top_builddir)/src \ $(ATOMIX_LIBS) level_convert_SOURCES = \ playfield.h playfield.c \ tile.c tile.h \ level.c level.h \ level-convert.c \ theme.c theme.h level_convert_LDADD = \ -L$(top_builddir)/src \ $(ATOMIX_LIBS) ui_DATA = atomix-ui.xml EXTRA_DIST = $(ui_DATA) all: all-am .SUFFIXES: .SUFFIXES: .c .o .obj $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ && exit 0; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/Makefile'; \ cd $(top_srcdir) && \ $(AUTOMAKE) --gnu src/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh clean-noinstLIBRARIES: -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) libatomix.a: $(libatomix_a_OBJECTS) $(libatomix_a_DEPENDENCIES) -rm -f libatomix.a $(libatomix_a_AR) libatomix.a $(libatomix_a_OBJECTS) $(libatomix_a_LIBADD) $(RANLIB) libatomix.a install-binPROGRAMS: $(bin_PROGRAMS) @$(NORMAL_INSTALL) test -z "$(bindir)" || $(mkdir_p) "$(DESTDIR)$(bindir)" @list='$(bin_PROGRAMS)'; for p in $$list; do \ p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \ if test -f $$p \ ; then \ f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \ echo " $(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) '$$p' '$(DESTDIR)$(bindir)/$$f'"; \ $(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(bindir)/$$f" || exit 1; \ else :; fi; \ done uninstall-binPROGRAMS: @$(NORMAL_UNINSTALL) @list='$(bin_PROGRAMS)'; for p in $$list; do \ f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \ echo " rm -f '$(DESTDIR)$(bindir)/$$f'"; \ rm -f "$(DESTDIR)$(bindir)/$$f"; \ done clean-binPROGRAMS: -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS) clean-noinstPROGRAMS: -test -z "$(noinst_PROGRAMS)" || rm -f $(noinst_PROGRAMS) atomix$(EXEEXT): $(atomix_OBJECTS) $(atomix_DEPENDENCIES) @rm -f atomix$(EXEEXT) $(LINK) $(atomix_LDFLAGS) $(atomix_OBJECTS) $(atomix_LDADD) $(LIBS) level-convert$(EXEEXT): $(level_convert_OBJECTS) $(level_convert_DEPENDENCIES) @rm -f level-convert$(EXEEXT) $(LINK) $(level_convert_LDFLAGS) $(level_convert_OBJECTS) $(level_convert_LDADD) $(LIBS) pf-test$(EXEEXT): $(pf_test_OBJECTS) $(pf_test_DEPENDENCIES) @rm -f pf-test$(EXEEXT) $(LINK) $(pf_test_LDFLAGS) $(pf_test_OBJECTS) $(pf_test_LDADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/board.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/canvas_helper.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/clock.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/goal-view.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/goal.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/level-convert.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/level-manager.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/level.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/main.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pf-test.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/playfield.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/theme-manager.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/theme.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tile.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/undo.Po@am__quote@ .c.o: @am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \ @am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: @am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \ @am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` uninstall-info-am: install-uiDATA: $(ui_DATA) @$(NORMAL_INSTALL) test -z "$(uidir)" || $(mkdir_p) "$(DESTDIR)$(uidir)" @list='$(ui_DATA)'; for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ f=$(am__strip_dir) \ echo " $(uiDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(uidir)/$$f'"; \ $(uiDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(uidir)/$$f"; \ done uninstall-uiDATA: @$(NORMAL_UNINSTALL) @list='$(ui_DATA)'; for p in $$list; do \ f=$(am__strip_dir) \ echo " rm -f '$(DESTDIR)$(uidir)/$$f'"; \ rm -f "$(DESTDIR)$(uidir)/$$f"; \ done ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'`; \ mkid -fID $$unique tags: TAGS TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$tags $$unique; \ fi ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'`; \ test -z "$(CTAGS_ARGS)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && cd $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) $$here distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ list='$(DISTFILES)'; for file in $$list; do \ case $$file in \ $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ esac; \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ if test "$$dir" != "$$file" && test "$$dir" != "."; then \ dir="/$$dir"; \ $(mkdir_p) "$(distdir)$$dir"; \ else \ dir=''; \ fi; \ if test -d $$d/$$file; then \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ else \ test -f $(distdir)/$$file \ || cp -p $$d/$$file $(distdir)/$$file \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile $(LIBRARIES) $(PROGRAMS) $(DATA) installdirs: for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(uidir)"; do \ test -z "$$dir" || $(mkdir_p) "$$dir"; \ done install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-binPROGRAMS clean-generic clean-noinstLIBRARIES \ clean-noinstPROGRAMS mostlyclean-am distclean: distclean-am -rm -rf ./$(DEPDIR) -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags dvi: dvi-am dvi-am: html: html-am info: info-am info-am: install-data-am: install-uiDATA install-exec-am: install-binPROGRAMS install-info: install-info-am install-man: installcheck-am: maintainer-clean: maintainer-clean-am -rm -rf ./$(DEPDIR) -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-compile mostlyclean-generic pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-binPROGRAMS uninstall-info-am uninstall-uiDATA .PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \ clean-generic clean-noinstLIBRARIES clean-noinstPROGRAMS ctags \ distclean distclean-compile distclean-generic distclean-tags \ distdir dvi dvi-am html html-am info info-am install \ install-am install-binPROGRAMS install-data install-data-am \ install-exec install-exec-am install-info install-info-am \ install-man install-strip install-uiDATA installcheck \ installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-compile \ mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \ uninstall-am uninstall-binPROGRAMS uninstall-info-am \ uninstall-uiDATA # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: atomix-2.14.0/src/tile.c0000644000175000017500000002446210336223355011722 00000000000000/* Atomix -- a little puzzle game about atoms and molecules. * Copyright (C) 1999-2001 Jens Finke * Copyright (C) 2005 Guilherme de S. Pastore * * 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 2 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, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include "tile.h" #define GPOINTER_TO_QUARK(p) ((GQuark) (p)) #define GQUARK_TO_POINTER(p) ((gpointer) (p)) static GObjectClass *parent_class = NULL; static void tile_class_init (GObjectClass *class); static void tile_init (Tile *tile); static void tile_finalize (GObject *object); struct _TilePrivate { TileType type; GQuark base_id; GSList *sub_id_list[2]; }; GType tile_get_type (void) { static GType object_type = 0; if (!object_type) { static const GTypeInfo object_info = { sizeof (TileClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) tile_class_init, NULL, /* clas_finalize */ NULL, /* class_data */ sizeof (Tile), 0, /* n_preallocs */ (GInstanceInitFunc) tile_init, }; object_type = g_type_register_static (G_TYPE_OBJECT, "Tile", &object_info, 0); } return object_type; } /*================================================================= Tile creation, initialisation and clean up ---------------------------------------------------------------*/ static void tile_class_init (GObjectClass *class) { parent_class = g_type_class_ref (G_TYPE_OBJECT); class->finalize = tile_finalize; } static void tile_init (Tile *tile) { TilePrivate *priv; priv = g_new0 (TilePrivate, 1); priv->type = TILE_TYPE_UNKNOWN; priv->base_id = 0; priv->sub_id_list[TILE_SUB_OVERLAY] = NULL; priv->sub_id_list[TILE_SUB_UNDERLAY] = NULL; tile->priv = priv; } static void tile_finalize (GObject *object) { Tile *tile = TILE (object); g_slist_free (tile->priv->sub_id_list[TILE_SUB_OVERLAY]); g_slist_free (tile->priv->sub_id_list[TILE_SUB_UNDERLAY]); g_free (tile->priv); tile->priv = NULL; } Tile *tile_new (TileType type) { Tile *tile; tile = TILE (g_object_new (TILE_TYPE, NULL)); tile->priv->type = type; return tile; } /*================================================================= Tile functions ---------------------------------------------------------------*/ Tile *tile_copy (Tile *tile) { GSList *sub_id; Tile *tile_copy; int id, i; g_return_val_if_fail (IS_TILE (tile), NULL); tile_copy = tile_new (tile->priv->type); tile_copy->priv->base_id = tile->priv->base_id; for (i = 0; i < 2; i++) { sub_id = tile->priv->sub_id_list[i]; for (; sub_id != NULL; sub_id = sub_id->next) { id = GPOINTER_TO_QUARK (sub_id->data); tile_copy->priv->sub_id_list[i] = g_slist_append (tile_copy->priv->sub_id_list[i], GQUARK_TO_POINTER (id)); } } return tile_copy; } GSList *tile_get_sub_ids (Tile *tile, TileSubType sub_type) { g_return_val_if_fail (IS_TILE (tile), NULL); return tile->priv->sub_id_list[sub_type]; } GQuark tile_get_base_id (Tile *tile) { g_return_val_if_fail (IS_TILE (tile), 0); return tile->priv->base_id; } TileType tile_get_tile_type (Tile *tile) { g_return_val_if_fail (IS_TILE (tile), TILE_TYPE_UNKNOWN); return tile->priv->type; } static gint list_compare_func (gconstpointer a, gconstpointer b) { return GPOINTER_TO_QUARK (a) - GPOINTER_TO_QUARK (b); } void tile_add_sub_id (Tile *tile, guint id, TileSubType sub_type) { g_return_if_fail (IS_TILE (tile)); tile->priv->sub_id_list[sub_type] = g_slist_insert_sorted (tile->priv->sub_id_list[sub_type], GQUARK_TO_POINTER (id), list_compare_func); } void tile_remove_sub_id (Tile *tile, guint id, TileSubType sub_type) { GSList *result; g_return_if_fail (IS_TILE (tile)); result = g_slist_find (tile->priv->sub_id_list[sub_type], GQUARK_TO_POINTER (id)); if (result != NULL) tile->priv->sub_id_list[sub_type] = g_slist_delete_link (tile->priv->sub_id_list[sub_type], result); } void tile_remove_all_sub_ids (Tile *tile, TileSubType sub_type) { g_return_if_fail (IS_TILE (tile)); g_slist_free (tile->priv->sub_id_list[sub_type]); tile->priv->sub_id_list[sub_type] = NULL; } void tile_set_base_id (Tile *tile, GQuark id) { g_return_if_fail (IS_TILE (tile)); tile->priv->base_id = id; } gboolean tile_is_equal (Tile *tile, Tile *comp) { GSList *elem; GSList *comp_elem; gint i; g_return_val_if_fail (IS_TILE (tile), FALSE); g_return_val_if_fail (IS_TILE (comp), FALSE); if (tile->priv->type != comp->priv->type) return FALSE; if (tile->priv->base_id != comp->priv->base_id) return FALSE; for (i = 0; i < 2; i++) { elem = tile->priv->sub_id_list[i]; comp_elem = comp->priv->sub_id_list[i]; for (; elem != NULL && comp_elem != NULL; elem = elem->next, comp_elem = comp_elem->next) { if (GPOINTER_TO_QUARK (elem->data) != GPOINTER_TO_QUARK (comp_elem->data)) return FALSE; } if (elem != NULL || comp_elem != NULL) return FALSE; } return TRUE; } void tile_set_tile_type (Tile *tile, TileType type) { g_return_if_fail (IS_TILE (tile)); tile->priv->type = type; } void tile_print (Tile *tile) { gchar *type_str; g_return_if_fail (IS_TILE (tile)); switch (tile->priv->type) { case TILE_TYPE_NONE: type_str = "NONE"; break; case TILE_TYPE_ATOM: type_str = "ATOM"; break; case TILE_TYPE_WALL: type_str = "WALL"; break; case TILE_TYPE_FLOOR: type_str = "FLOR"; break; default: type_str = "UKWN"; break; } g_print ("%s ", type_str); #if 0 g_print ("Tile TYPE: %s BASE_ID: %i LINK_IDs: ", type_str, tile->priv->base_id); for (link = 0; link < TILE_LINK_LAST; link++) { if (tile->priv->link_id[link]) { switch (link) { case TILE_LINK_LEFT: g_print ("left, "); break; case TILE_LINK_RIGHT: g_print ("right, "); break; case TILE_LINK_TOP: g_print ("top, "); break; case TILE_LINK_BOTTOM: g_print ("bottom,"); break; case TILE_LINK_TOP_LEFT: g_print ("top-left, "); break; case TILE_LINK_TOP_RIGHT: g_print ("top-right, "); break; case TILE_LINK_BOTTOM_LEFT: g_print ("bottom-left, "); break; case TILE_LINK_BOTTOM_RIGHT: g_print ("bottom-right, "); break; case TILE_LINK_LEFT_DOUBLE: g_print ("left-double, "); break; case TILE_LINK_RIGHT_DOUBLE: g_print ("right-double, "); break; case TILE_LINK_TOP_DOUBLE: g_print ("top-double, "); break; case TILE_LINK_BOTTOM_DOUBLE: g_print ("bottom-double, "); break; default: g_print ("Unknown, "); break; } } } #endif } /*================================================================= Tile load/save functions ---------------------------------------------------------------*/ static TileType string_to_tile_type (gchar *str) { TileType tile_type = TILE_TYPE_UNKNOWN; static int prefix_len = 0; if (!prefix_len) prefix_len = strlen ("TILE_TYPE_"); g_return_val_if_fail (str != NULL, tile_type); str += prefix_len; if (!g_ascii_strcasecmp (str, "FLOOR")) tile_type = TILE_TYPE_FLOOR; else if (!g_ascii_strcasecmp (str, "WALL")) tile_type = TILE_TYPE_WALL; else if (!g_ascii_strcasecmp (str, "ATOM")) tile_type = TILE_TYPE_ATOM; else tile_type = TILE_TYPE_UNKNOWN; return tile_type; } Tile *tile_new_from_xml (xmlNodePtr node) { xmlNodePtr child; Tile *tile = NULL; TileType type; GQuark base_id; GQuark sub_id; gchar *content; g_return_val_if_fail (node != NULL, NULL); g_return_val_if_fail (!g_ascii_strcasecmp (node->name, "tile"), NULL); tile = NULL; for (child = node->xmlChildrenNode; child != NULL; child = child->next) { if (!g_ascii_strcasecmp (child->name, "type")) { g_assert (tile == NULL); content = xmlNodeGetContent (child); type = string_to_tile_type (content); tile = tile_new (type); } else if (!g_ascii_strcasecmp (child->name, "base")) { g_assert (tile != NULL); content = xmlNodeGetContent (child); base_id = g_quark_from_string (content); tile_set_base_id (tile, base_id); } else if (!g_ascii_strcasecmp (child->name, "underlay")) { g_assert (tile != NULL); content = xmlNodeGetContent (child); sub_id = g_quark_from_string (content); tile_add_sub_id (tile, sub_id, TILE_SUB_UNDERLAY); } else if (!g_ascii_strcasecmp (child->name, "overlay")) { g_assert (tile != NULL); content = xmlNodeGetContent (child); base_id = g_quark_from_string (content); tile_add_sub_id (tile, base_id, TILE_SUB_OVERLAY); } else if (!g_ascii_strcasecmp (child->name, "text")) { } else { g_warning ("Skipping unknown tag: %s.", child->name); } } return tile; } #if 0 void tile_save_xml (Tile *tile, xmlNodePtr tile_node) { xmlNodePtr child; gchar *str_buffer; gint length; GSList *conn_id; TileType type; gint img_id; str_buffer = g_malloc (5 * sizeof (gchar)); if (tile && tile_node) { /* add tile type */ type = tile_get_type (tile); length = g_snprintf (str_buffer, 5, "%i", (gint) type); child = xmlNewChild (tile_node, NULL, "TYPE", str_buffer); /* add image id */ img_id = tile_get_image_id (tile); length = g_snprintf (str_buffer, 5, "%i", img_id); child = xmlNewChild (tile_node, NULL, "IMG_ID", str_buffer); /* add link id */ conn_id = tile->conn_ids; while (conn_id) { gint value = GPOINTER_TO_QUARK (conn_id->data); length = g_snprintf (str_buffer, 5, "%i", value); child = xmlNewChild (tile_node, NULL, "CONN_ID", str_buffer); conn_id = conn_id->next; } } g_free (str_buffer); } #endif atomix-2.14.0/src/tile.h0000644000175000017500000000474610336223355011732 00000000000000/* Atomix -- a little puzzle game about atoms and molecules. * Copyright (C) 1999-2001 Jens Finke * Copyright (C) 2005 Guilherme de S. Pastore * * 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 2 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, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifndef _TILE_H_ #define _TILE_H_ #include #include #define TILE_TYPE (tile_get_type ()) #define TILE(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TILE_TYPE, Tile)) #define TILE_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), TILE_TYPE, TileClass)) #define IS_TILE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TILE_TYPE)) #define IS_TILE_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TILE_TYPE)) #define TILE_GET_CLASS(o)(G_TYPE_INSTANCE_GET_CLASS ((o), TILE_TYPE, TileClass)) typedef struct _TilePrivate TilePrivate; typedef enum { TILE_TYPE_NONE, TILE_TYPE_ATOM, TILE_TYPE_WALL, TILE_TYPE_FLOOR, TILE_TYPE_SHADOW, TILE_TYPE_UNKNOWN, TILE_TYPE_LAST } TileType; typedef enum { TILE_SUB_OVERLAY, TILE_SUB_UNDERLAY } TileSubType; typedef struct { GObject parent; TilePrivate *priv; } Tile; typedef struct { GObjectClass parent_class; } TileClass; GType tile_get_type (void); Tile *tile_new (TileType type); Tile *tile_new_from_xml (xmlNodePtr node); Tile *tile_copy (Tile * tile); GSList *tile_get_sub_ids (Tile * tile, TileSubType sub_type); GQuark tile_get_base_id (Tile * tile); TileType tile_get_tile_type (Tile * tile); void tile_add_sub_id (Tile * tile, GQuark id, TileSubType sub_type); void tile_remove_sub_id (Tile * tile, guint id, TileSubType sub_type); void tile_remove_all_sub_ids (Tile * tile, TileSubType sub_type); void tile_set_base_id (Tile * tile, GQuark id); void tile_set_tile_type (Tile * tile, TileType type); void tile_print (Tile * tile); gboolean tile_is_equal (Tile * tile, Tile * comp); #if 0 void tile_save_xml (Tile * tile, xmlNodePtr parent); #endif #endif /* _TILE_H */ atomix-2.14.0/src/theme.c0000644000175000017500000003272410336223355012067 00000000000000/* Atomix -- a little puzzle game about atoms and molecules. * Copyright (C) 1999-2001 Jens Finke * Copyright (C) 2005 Guilherme de S. Pastore * * 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 2 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, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include "theme.h" #include "theme-private.h" /*================================================================= Declaration of internal functions ---------------------------------------------------------------*/ static void theme_class_init (GObjectClass *class); static void theme_init (Theme *theme); static void theme_finalize (GObject *object); static void destroy_theme_image (gpointer data); GObjectClass *parent_class; GType theme_get_type (void) { static GType object_type = 0; if (!object_type) { static const GTypeInfo object_info = { sizeof (ThemeClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) theme_class_init, NULL, /* clas_finalize */ NULL, /* class_data */ sizeof (Theme), 0, /* n_preallocs */ (GInstanceInitFunc) theme_init, }; object_type = g_type_register_static (G_TYPE_OBJECT, "Theme", &object_info, 0); } return object_type; } /*================================================================= Theme creation, initialisation and clean up ---------------------------------------------------------------*/ static void theme_class_init (GObjectClass *class) { parent_class = g_type_class_ref (G_TYPE_OBJECT); class->finalize = theme_finalize; } static void theme_init (Theme *theme) { ThemePrivate *priv; priv = g_new0 (ThemePrivate, 1); priv->name = NULL; priv->path = NULL; priv->tile_width = 0; priv->tile_height = 0; priv->animstep = 0; priv->bg_color.red = 0; priv->bg_color.green = 0; priv->bg_color.blue = 0; g_datalist_init (&priv->images); theme->priv = priv; } static void theme_finalize (GObject *object) { ThemePrivate *priv; Theme *theme = THEME (object); g_return_if_fail (theme != NULL); #ifdef DEBUG g_message ("Finalize theme"); #endif priv = theme->priv; if (priv->name) g_free (priv->name); priv->name = NULL; if (priv->path) g_free (priv->path); priv->path = NULL; if (priv->images) g_datalist_clear (&priv->images); g_free (theme->priv); theme->priv = NULL; } Theme *theme_new (void) { Theme *theme; theme = THEME (g_object_new (THEME_TYPE, NULL)); return theme; } /*================================================================= Theme functions ---------------------------------------------------------------*/ gchar *theme_get_name (Theme *theme) { g_return_val_if_fail (IS_THEME (theme), NULL); return theme->priv->name; } gint theme_get_animstep (Theme *theme) { g_return_val_if_fail (IS_THEME (theme), 0); return theme->priv->animstep; } static void destroy_theme_image (gpointer data) { ThemeImage *ti; ti = (ThemeImage *) data; if (ti == NULL) return; if (ti->file) g_free (ti->file); if (ti->image) g_object_unref (ti->image); if (ti->decorations) g_slist_free (ti->decorations); g_free (ti); } static GdkPixbuf *get_theme_image_pixbuf (ThemeImage *ti) { GdkPixbuf *pixbuf; if (ti == NULL) return NULL; if (ti->loading_failed) return NULL; if (ti->image == NULL) { ti->image = gdk_pixbuf_new_from_file (ti->file, NULL); if (ti->image == NULL) ti->loading_failed = TRUE; else if (ti->alpha < 255) { pixbuf = gdk_pixbuf_new (GDK_COLORSPACE_RGB, TRUE, 8, gdk_pixbuf_get_width (ti->image), gdk_pixbuf_get_height (ti->image)); gdk_pixbuf_fill (pixbuf, 0x00000000); gdk_pixbuf_composite (ti->image, pixbuf, 0, 0, gdk_pixbuf_get_width (pixbuf), gdk_pixbuf_get_height (pixbuf), 0.0, 0.0, 1.0, 1.0, GDK_INTERP_NEAREST, ti->alpha); g_object_unref (ti->image); ti->image = pixbuf; } } if (ti->image != NULL) g_object_ref (ti->image); return ti->image; } static GdkPixbuf *create_sub_images (Theme *theme, Tile *tile, TileSubType sub_type) { ThemePrivate *priv; GSList *elem; ThemeImage *ti; GdkPixbuf *pixbuf = NULL; GdkPixbuf *pb; g_return_val_if_fail (IS_THEME (theme), NULL); g_return_val_if_fail (IS_TILE (tile), NULL); priv = theme->priv; elem = tile_get_sub_ids (tile, sub_type); for (; elem != NULL; elem = elem->next) { ti = g_datalist_id_get_data (&priv->images, (GQuark) elem->data); if (ti == NULL) continue; pb = get_theme_image_pixbuf (ti); if (pb == NULL) { #ifdef DEBUG g_warning ("Couldn't load sub image: %s", g_quark_to_string ((GQuark) elem->data)); #endif continue; } if (pixbuf == NULL) { pixbuf = gdk_pixbuf_copy (pb); } else { gdk_pixbuf_composite (pb, pixbuf, 0, 0, gdk_pixbuf_get_width (pixbuf), gdk_pixbuf_get_height (pixbuf), 0.0, 0.0, 1.0, 1.0, GDK_INTERP_NEAREST, 255); } g_object_unref (pb); } return pixbuf; } gboolean theme_apply_decoration (Theme *theme, Tile *tile) { static int counter = 0; ThemeImage *ti; gint n_decorations; GQuark decor_id; if (tile == NULL) return FALSE; g_return_val_if_fail (IS_THEME (theme), FALSE); g_return_val_if_fail (IS_TILE (tile), FALSE); ti = g_datalist_id_get_data (&theme->priv->images, tile_get_base_id (tile)); if (ti->decorations == NULL) return FALSE; n_decorations = g_slist_length (ti->decorations); decor_id = (GQuark) g_slist_nth_data (ti->decorations, counter++ % n_decorations); tile_add_sub_id (tile, decor_id, TILE_SUB_OVERLAY); return TRUE; } GdkPixbuf *theme_get_tile_image (Theme *theme, Tile *tile) { ThemePrivate *priv; TileType type; GQuark image_id; ThemeImage *ti = NULL; GdkPixbuf *underlay_pb = NULL; GdkPixbuf *overlay_pb = NULL; GdkPixbuf *base_pb = NULL; GdkPixbuf *result = NULL; gint tw, th; g_return_val_if_fail (IS_THEME (theme), NULL); g_return_val_if_fail (IS_TILE (tile), NULL); priv = theme->priv; type = tile_get_tile_type (tile); image_id = tile_get_base_id (tile); underlay_pb = create_sub_images (theme, tile, TILE_SUB_UNDERLAY); overlay_pb = create_sub_images (theme, tile, TILE_SUB_OVERLAY); ti = g_datalist_id_get_data (&priv->images, image_id); base_pb = get_theme_image_pixbuf (ti); if (base_pb == NULL) { theme_get_tile_size (theme, &tw, &th); base_pb = gdk_pixbuf_new (GDK_COLORSPACE_RGB, TRUE, 8, tw, th); gdk_pixbuf_fill (base_pb, 0); } if (underlay_pb && overlay_pb) { result = gdk_pixbuf_copy (underlay_pb); gdk_pixbuf_composite (base_pb, result, 0, 0, gdk_pixbuf_get_width (result), gdk_pixbuf_get_height (result), 0.0, 0.0, 1.0, 1.0, GDK_INTERP_NEAREST, 255); gdk_pixbuf_composite (overlay_pb, result, 0, 0, gdk_pixbuf_get_width (result), gdk_pixbuf_get_height (result), 0.0, 0.0, 1.0, 1.0, GDK_INTERP_NEAREST, 255); g_object_unref (overlay_pb); g_object_unref (underlay_pb); } else if (!underlay_pb && overlay_pb) { result = gdk_pixbuf_copy (base_pb); gdk_pixbuf_composite (overlay_pb, result, 0, 0, gdk_pixbuf_get_width (result), gdk_pixbuf_get_height (result), 0.0, 0.0, 1.0, 1.0, GDK_INTERP_NEAREST, 255); g_object_unref (overlay_pb); } else if (underlay_pb && !overlay_pb) { result = gdk_pixbuf_copy (underlay_pb); gdk_pixbuf_composite (base_pb, result, 0, 0, gdk_pixbuf_get_width (result), gdk_pixbuf_get_height (result), 0.0, 0.0, 1.0, 1.0, GDK_INTERP_NEAREST, 255); g_object_unref (underlay_pb); } else result = g_object_ref (base_pb); g_object_unref (base_pb); return result; } GdkPixbuf *theme_get_selector_image (Theme *theme) { static GQuark cursor_id = 0; ThemeImage *ti; if (!cursor_id) cursor_id = g_quark_from_static_string ("cursor"); g_return_val_if_fail (IS_THEME (theme), NULL); ti = g_datalist_id_get_data (&theme->priv->images, cursor_id); return get_theme_image_pixbuf (ti); } void theme_get_selector_arrow_images (Theme *theme, GdkPixbuf **arrows) { gint i; ThemeImage *ti; static GQuark arrow_id[4] = { 0, 0, 0, 0 }; if (!arrow_id[0]) { arrow_id[0] = g_quark_from_static_string ("arrow-top"); arrow_id[1] = g_quark_from_static_string ("arrow-right"); arrow_id[2] = g_quark_from_static_string ("arrow-bottom"); arrow_id[3] = g_quark_from_static_string ("arrow-left"); } for (i = 0; i < 4; i++) { ti = g_datalist_id_get_data (&theme->priv->images, arrow_id[i]); arrows[i] = get_theme_image_pixbuf (ti); } } void theme_get_tile_size (Theme *theme, gint *width, gint *height) { *width = *height = 0; g_return_if_fail (IS_THEME (theme)); *width = theme->priv->tile_width; *height = theme->priv->tile_height; } GdkColor *theme_get_background_color (Theme *theme) { return &(theme->priv->bg_color); } GQuark theme_add_image (Theme *theme, const gchar *src, gint alpha) { ThemeImage *ti; gchar *filename; gchar *suffix; g_return_val_if_fail (IS_THEME (theme), 0); g_return_val_if_fail (src != NULL, 0); g_return_val_if_fail (0 <= alpha && alpha <= 255, 0); ti = g_new0 (ThemeImage, 1); ti->file = g_strdup (src); ti->loading_failed = FALSE; ti->image = NULL; ti->alpha = alpha; ti->decorations = NULL; filename = g_path_get_basename (src); suffix = g_strrstr (filename, ".png"); if (suffix != NULL) *suffix = '\0'; else { suffix = g_strrstr (filename, ".gif"); if (suffix != NULL) *suffix = '\0'; } ti->id = g_quark_from_string (filename); g_datalist_id_set_data_full (&theme->priv->images, ti->id, ti, destroy_theme_image); g_free (filename); return ti->id; } void theme_add_image_decoration (Theme *theme, GQuark base, GQuark decor) { ThemeImage *ti; g_return_if_fail (IS_THEME (theme)); ti = g_datalist_id_get_data (&theme->priv->images, base); if (ti == NULL) return; ti->decorations = g_slist_append (ti->decorations, (gpointer) decor); } #if 0 void theme_save_xml (Theme *theme, gchar *filename) { xmlDocPtr doc; xmlAttrPtr attr; xmlNodePtr node; xmlNodePtr theme_node; xmlNodePtr section_node; gint dist; gint i; gchar *str_buffer; gchar *node_name[N_IMG_LISTS]; node_name[THEME_IMAGE_MOVEABLE] = "MOVEABLE"; node_name[THEME_IMAGE_OBSTACLE] = "OBSTACLE"; node_name[THEME_IMAGE_LINK] = "LINK"; str_buffer = g_malloc (6 * sizeof (gchar)); /* create xml doc */ doc = xmlNewDoc ("1.0"); // xmlSetDocCompressMode(doc, 9); /* theme name */ theme_node = xmlNewDocNode (doc, NULL, "THEME", NULL); doc->xmlRootNode = theme_node; attr = xmlSetProp (theme_node, "name", g_strdup (theme->name)); /* revision */ node = xmlNewChild (theme_node, NULL, "REVISION", "2"); /* bg_color */ node = xmlNewChild (theme_node, NULL, "BGCOLOR_RGB", NULL); dist = g_snprintf (str_buffer, 6, "%i", theme->bg_color.red); attr = xmlSetProp (node, "red", g_strdup (str_buffer)); dist = g_snprintf (str_buffer, 6, "%i", theme->bg_color.green); attr = xmlSetProp (node, "green", g_strdup (str_buffer)); dist = g_snprintf (str_buffer, 6, "%i", theme->bg_color.blue); attr = xmlSetProp (node, "blue", g_strdup (str_buffer)); /* animstep */ node = xmlNewChild (theme_node, NULL, "ANIMSTEP", NULL); dist = g_snprintf (str_buffer, 5, "%i", theme->animstep); attr = xmlSetProp (node, "dist", g_strdup (str_buffer)); /* the different image lists */ for (i = 0; i < N_IMG_LISTS; i++) { section_node = xmlNewChild (theme_node, NULL, node_name[i], NULL); dist = g_snprintf (str_buffer, 5, "%i", theme->last_id[i]); attr = xmlSetProp (section_node, "last_id", g_strdup (str_buffer)); g_hash_table_foreach (theme->image_list[i], (GHFunc) theme_save_image_element_xml, (gpointer) section_node); } /* selector section */ if (theme->selector) { xmlNodePtr selector_node; selector_node = xmlNewChild (theme_node, NULL, "SELECTOR", NULL); attr = xmlSetProp (selector_node, "src", g_strdup (theme->selector->file)); } xmlSaveFile (filename, doc); xmlFreeDoc (doc); g_free (str_buffer); } void theme_save_image_element_xml (gpointer key, gpointer value, gpointer user_data) { ThemeElement *element = (ThemeElement *) value; if (!element->loading_failed) { gchar *str_buffer; gint length; gint id = GPOINTER_TO_INT (key); xmlNodePtr child; xmlNodePtr parent = (xmlNodePtr) user_data; xmlAttrPtr attr; str_buffer = g_malloc (5 * sizeof (gchar)); child = xmlNewChild (parent, NULL, "IMAGE", NULL); length = g_snprintf (str_buffer, 5, "%i", id); attr = xmlSetProp (child, "no", g_strdup (str_buffer)); attr = xmlSetProp (child, "src", g_strdup (element->file)); attr = xmlSetProp (child, "name", g_strdup (element->name)); g_free (str_buffer); } } #endif atomix-2.14.0/src/theme.h0000644000175000017500000000427110336223355012070 00000000000000/* Atomix -- a little puzzle game about atoms and molecules. * Copyright (C) 1999-2001 Jens Finke * Copyright (C) 2005 Guilherme de S. Pastore * * 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 2 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, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifndef _ATOMIX_THEME_H_ #define _ATOMIX_THEME_H_ #include #include #include "tile.h" #define THEME_TYPE (theme_get_type ()) #define THEME(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), THEME_TYPE, Theme)) #define THEME_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), THEME_TYPE, ThemeClass)) #define IS_THEME(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), THEME_TYPE)) #define IS_THEME_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), THEME_TYPE)) #define THEME_GET_CLASS(o)(G_TYPE_INSTANCE_GET_CLASS ((o), THEME_TYPE, ThemeClass)) typedef struct _ThemePrivate ThemePrivate; typedef struct { GObject parent; ThemePrivate *priv; } Theme; typedef struct { GObjectClass parent_class; } ThemeClass; GType theme_get_type (void); /* This class can't be directyl instantiated. Use * ThemeManager to get an Theme object. */ GdkPixbuf *theme_get_tile_image (Theme * theme, Tile * tile); GdkColor *theme_get_background_color (Theme * theme); GdkPixbuf *theme_get_selector_image (Theme * theme); void theme_get_selector_arrow_images (Theme * theme, GdkPixbuf ** arrow_images); void theme_get_tile_size (Theme * theme, gint * width, gint * height); gchar *theme_get_name (Theme * theme); gint theme_get_animstep (Theme * theme); gboolean theme_apply_decoration (Theme * theme, Tile * tile); #endif /* _ATOMIX_THEME_H_ */ atomix-2.14.0/src/theme-private.h0000644000175000017500000000354110336223355013537 00000000000000/* Atomix -- a little puzzle game about atoms and molecules. * Copyright (C) 2001 Jens Finke * Copyright (C) 2005 Guilherme de S. Pastore * * 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 2 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, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifndef _ATOMIX_THEME_PRIVATE_H_ #define _ATOMIX_THEME_PRIVATE_H_ #include "tile.h" typedef struct { GQuark id; /* the id */ gchar *file; /* file name */ gboolean loading_failed; /* if once the image loading failed. */ GdkPixbuf *image; /* image */ gint alpha; /* alpha value to use for overy-/underlay */ GSList *decorations; /* possible decoration images */ } ThemeImage; struct _ThemePrivate { gchar *name; /* name of the theme */ gchar *path; /* full qualified path to the theme directory */ gint tile_width; /* width of each tile */ gint tile_height; /* height of each tile */ gint animstep; /* number of pixels to move a atom in one animation step */ GdkColor bg_color; /* background color */ GData *images; /* key/data list for all the images */ }; Theme *theme_new (void); GQuark theme_add_image (Theme * theme, const gchar * src, gint alpha); void theme_add_image_decoration (Theme * theme, GQuark base, GQuark decor); #endif /* _ATOMIX_THEME_PRIVATE_H_ */ atomix-2.14.0/src/theme-manager.c0000644000175000017500000002453310337226515013500 00000000000000/* Atomix -- a little puzzle game about atoms and molecules. * Copyright (C) 2001 Jens Finke * Copyright (C) 2005 Guilherme de S. Pastore * * 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 2 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, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include #include #include #include #include #include #include "theme-manager.h" #include "theme-private.h" static GObjectClass *parent_class = NULL; static void search_themes_in_dir (ThemeManager *tm, const gchar *dir_path); static void add_theme (ThemeManager *tm, gchar *themename, gchar *dirpath); static void add_theme_to_list (gchar *key, gpointer value, GList **list); static Theme *load_theme (gchar *theme_dir); static void handle_tile_icon_node (Theme *theme, xmlNodePtr node); static gchar *lookup_theme_name (gchar *theme_file); static void theme_manager_class_init (GObjectClass *class); static void theme_manager_init (ThemeManager *tm); static void theme_manager_finalize (GObject *object); static void handle_tile_decor_node (Theme *theme, xmlNodePtr node); struct _ThemeManagerPrivate { gboolean initialized; GHashTable *themes; }; GType theme_manager_get_type (void) { static GType object_type = 0; if (!object_type) { static const GTypeInfo object_info = { sizeof (ThemeManagerClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) theme_manager_class_init, NULL, /* clas_finalize */ NULL, /* class_data */ sizeof (ThemeManager), 0, /* n_preallocs */ (GInstanceInitFunc) theme_manager_init, }; object_type = g_type_register_static (G_TYPE_OBJECT, "ThemeManager", &object_info, 0); } return object_type; } /*================================================================= Theme_Manager creation, initialisation and clean up ---------------------------------------------------------------*/ static void theme_manager_class_init (GObjectClass *class) { parent_class = g_type_class_ref (G_TYPE_OBJECT); class->finalize = theme_manager_finalize; } static void theme_manager_init (ThemeManager *tm) { ThemeManagerPrivate *priv; priv = g_new0 (ThemeManagerPrivate, 1); priv->initialized = FALSE; priv->themes = g_hash_table_new_full ((GHashFunc) g_str_hash, (GCompareFunc) g_str_equal, (GDestroyNotify) g_free, (GDestroyNotify) g_free); tm->priv = priv; } static void theme_manager_finalize (GObject *object) { ThemeManager *tm = THEME_MANAGER (object); g_hash_table_destroy (tm->priv->themes); g_free (tm->priv); tm->priv = NULL; } ThemeManager *theme_manager_new (void) { ThemeManager *tm; tm = THEME_MANAGER (g_object_new (THEME_MANAGER_TYPE, NULL)); return tm; } void theme_manager_init_themes (ThemeManager *tm) { gchar *dir_path; g_return_if_fail (IS_THEME_MANAGER (tm)); g_return_if_fail (!tm->priv->initialized); dir_path = g_build_filename (g_get_home_dir (), ".atomix", "themes", NULL); search_themes_in_dir (tm, dir_path); g_free (dir_path); dir_path = g_build_filename (DATADIR, "atomix", "themes", NULL); search_themes_in_dir (tm, dir_path); g_free (dir_path); if (g_hash_table_size (tm->priv->themes) == 0) g_warning (_("No themes found.")); tm->priv->initialized = TRUE; } static void search_themes_in_dir (ThemeManager *tm, const gchar *dir_path) { struct dirent *dent = NULL; DIR *dir; dir = opendir (dir_path); if (dir) { char *filename; char *themename; char *subdirpath; while ((dent = readdir (dir)) != NULL) { if ((g_ascii_strcasecmp (".", dent->d_name) != 0) && (g_ascii_strcasecmp ("..", dent->d_name) != 0)) { /* is current file a directory? */ subdirpath = g_build_filename (dir_path, dent->d_name, NULL); if (g_file_test (subdirpath, G_FILE_TEST_IS_DIR)) { /* try to load file */ filename = g_build_filename (subdirpath, "theme", NULL); themename = lookup_theme_name (filename); add_theme (tm, themename, subdirpath); g_free (filename); g_free (themename); } g_free (subdirpath); } } g_free (dent); closedir (dir); } } static void add_theme (ThemeManager *tm, gchar *themename, gchar *dirpath) { gchar *search_result; g_return_if_fail (IS_THEME_MANAGER (tm)); g_return_if_fail (themename != NULL); g_return_if_fail (dirpath != NULL); /* don't add a theme twice */ search_result = g_hash_table_lookup (tm->priv->themes, themename); if (search_result == NULL) { g_hash_table_insert (tm->priv->themes, g_strdup (themename), g_strdup (dirpath)); #ifdef DEBUG g_message (_("Found theme '%s' in: %s"), themename, dirpath); #endif } } GList *theme_manager_get_available_themes (ThemeManager *tm) { GList *list = NULL; g_return_val_if_fail (IS_THEME_MANAGER (tm), NULL); g_hash_table_foreach (tm->priv->themes, (GHFunc) add_theme_to_list, &list); return list; } static void add_theme_to_list (gchar *key, gpointer value, GList **list) { *list = g_list_insert_sorted (*list, key, (GCompareFunc) g_ascii_strcasecmp); } /* ======================================================================= Theme loading stuff ======================================================================== */ Theme *theme_manager_get_theme (ThemeManager *tm, const gchar *theme_name) { Theme *theme; gchar *theme_dir; g_return_val_if_fail (IS_THEME_MANAGER (tm), NULL); g_return_val_if_fail (tm->priv->initialized, NULL); theme_dir = g_hash_table_lookup (tm->priv->themes, theme_name); if (theme_dir == NULL) return NULL; theme = load_theme (theme_dir); return theme; } static Theme *load_theme (gchar *theme_dir) { Theme *theme; ThemePrivate *priv; gchar *theme_file; gchar *prop_value; xmlDocPtr doc; xmlNodePtr node; g_return_val_if_fail (theme_dir != NULL, NULL); theme_file = g_build_filename (theme_dir, "theme", NULL); if (!g_file_test (theme_file, G_FILE_TEST_IS_REGULAR)) { g_warning ("File not found: %s.", theme_file); g_free (theme_file); return NULL; } doc = xmlParseFile (theme_file); if (doc == NULL) { g_warning ("Couldn't parse XML file: %s.", theme_file); g_free (theme_file); return NULL; } theme = theme_new (); priv = theme->priv; priv->path = g_strdup (theme_dir); node = doc->xmlRootNode; while (node != NULL) { if (!g_ascii_strcasecmp (node->name, "theme")) { /* handle theme node */ priv->name = g_strdup (xmlGetProp (node, "name")); node = node->xmlChildrenNode; } else { if (!g_ascii_strcasecmp (node->name, "icon")) { handle_tile_icon_node (theme, node); } else if (!g_ascii_strcasecmp (node->name, "decor")) { handle_tile_decor_node (theme, node); } else if (!g_ascii_strcasecmp (node->name, "animstep")) { priv->animstep = atoi (xmlGetProp (node, "dist")); } else if (!g_ascii_strcasecmp (node->name, "bgcolor")) { /* handle background color */ prop_value = xmlGetProp (node, "color"); gdk_color_parse (prop_value, &(priv->bg_color)); } else if (!g_ascii_strcasecmp (node->name, "bgcolor_rgb")) { /* handle rgb color node */ prop_value = xmlGetProp (node, "red"); priv->bg_color.red = (atof (prop_value) / 255.0) * 65536; prop_value = xmlGetProp (node, "green"); priv->bg_color.green = (atof (prop_value) / 255.0) * 65536; prop_value = xmlGetProp (node, "blue"); priv->bg_color.blue = (atof (prop_value) / 255.0) * 65536; } else if (!g_ascii_strcasecmp (node->name, "text")) { } else { g_warning ("Unknown theme tag, ignoring <%s>.", node->name); } node = node->next; } } xmlFreeDoc (doc); return theme; } static void handle_tile_decor_node (Theme *theme, xmlNodePtr node) { gchar *src; gchar *base; GQuark base_id; GQuark decor_id; gint alpha = 255; g_return_if_fail (IS_THEME (theme)); src = g_build_filename (theme->priv->path, xmlGetProp (node, "src"), NULL); if (xmlGetProp (node, "alpha") != NULL) { alpha = atoi (xmlGetProp (node, "alpha")); if (alpha < 0) alpha = 0; if (alpha > 255) alpha = 255; } decor_id = theme_add_image (theme, src, alpha); g_free (src); base = xmlGetProp (node, "base"); if (base == NULL) return; base_id = g_quark_from_string (base); theme_add_image_decoration (theme, base_id, decor_id); } static void handle_tile_icon_node (Theme *theme, xmlNodePtr node) { gchar *src; GdkPixbuf *pixbuf; gint alpha = 255; g_return_if_fail (IS_THEME (theme)); src = g_build_filename (theme->priv->path, xmlGetProp (node, "src"), NULL); if (xmlGetProp (node, "alpha") != NULL) { alpha = atoi (xmlGetProp (node, "alpha")); if (alpha < 0) alpha = 0; if (alpha > 255) alpha = 255; } if (theme->priv->tile_width == 0) { pixbuf = gdk_pixbuf_new_from_file (src, NULL); if (pixbuf != NULL) { theme->priv->tile_width = gdk_pixbuf_get_width (pixbuf); theme->priv->tile_height = gdk_pixbuf_get_height (pixbuf); g_object_unref (pixbuf); } } theme_add_image (theme, src, alpha); g_free (src); } static gchar *lookup_theme_name (gchar *theme_file) { xmlDocPtr doc; xmlNodePtr node; gchar *name = NULL; g_return_val_if_fail (theme_file != NULL, NULL); g_return_val_if_fail (g_file_test (theme_file, G_FILE_TEST_EXISTS), NULL); /* read file */ doc = xmlParseFile (theme_file); if (doc == NULL) { g_warning ("Couldn't parse theme file: %s", theme_file); return NULL; } node = doc->xmlRootNode; if (node && !g_ascii_strcasecmp (node->name, "theme")) name = g_strdup (xmlGetProp (node, "name")); xmlFreeDoc (doc); return name; } atomix-2.14.0/src/theme-manager.h0000644000175000017500000000377110336223355013504 00000000000000/* Atomix -- a little puzzle game about atoms and molecules. * Copyright (C) 2001 Jens Finke * Copyright (C) 2005 Guilherme de S. Pastore * * 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 2 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, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifndef _ATOMIX_THEME_MANAGER_H_ #define _ATOMIX_THEME_MANAGER_H_ #include #include "theme.h" #define THEME_MANAGER_TYPE (theme_manager_get_type ()) #define THEME_MANAGER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), THEME_MANAGER_TYPE, ThemeManager)) #define THEME_MANAGER_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), THEME_MANAGER_TYPE, ThemeManager)) #define IS_THEME_MANAGER(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), THEME_MANAGER_TYPE)) #define IS_THEME_MANAGER_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), THEME_MANAGER_TYPE)) #define THEME_MANAGER_GET_CLASS(o)(G_TYPE_INSTANCE_GET_CLASS ((o), THEME_MANAGER_TYPE, ThemeManagerClass)) typedef struct _ThemeManagerPrivate ThemeManagerPrivate; typedef struct { GObject parent; ThemeManagerPrivate *priv; } ThemeManager; typedef struct { GObjectClass parent_class; } ThemeManagerClass; GType theme_manager_get_type (void); ThemeManager *theme_manager_new (void); void theme_manager_init_themes (ThemeManager * tm); Theme *theme_manager_get_theme (ThemeManager * tm, const gchar * theme_name); GList *theme_manager_get_available_themes (ThemeManager * tm); #endif /* _ATOMIX_THEME_MANAGER_H_ */ atomix-2.14.0/src/level.c0000644000175000017500000001301210357257614012071 00000000000000/* Atomix -- a little puzzle game about atoms and molecules. * Copyright (C) 1999-2001 Jens Finke * Copyright (C) 2005 Guilherme de S. Pastore * * 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 2 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, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include #include #include #include #include #include "level.h" #include "level-private.h" static void level_class_init (GObjectClass *class); static void level_init (Level *level); static void level_finalize (GObject *object); GObjectClass *parent_class; /*================================================================= Level creation, initialisation and clean up ---------------------------------------------------------------*/ GType level_get_type (void) { static GType object_type = 0; if (!object_type) { static const GTypeInfo object_info = { sizeof (LevelClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) level_class_init, NULL, /* clas_finalize */ NULL, /* class_data */ sizeof(Level), 0, /* n_preallocs */ (GInstanceInitFunc) level_init, }; object_type = g_type_register_static (G_TYPE_OBJECT, "Level", &object_info, 0); } return object_type; } /*================================================================= Level creation, initialisation and clean up ---------------------------------------------------------------*/ static void level_class_init (GObjectClass *class) { parent_class = g_type_class_ref (G_TYPE_OBJECT); class->finalize = level_finalize; } static void level_init (Level *level) { LevelPrivate *priv; priv = g_new0 (LevelPrivate, 1); priv->name = NULL; priv->formula = NULL; priv->goal = NULL; priv->environment = NULL; priv->scenario = NULL; priv->file_name = NULL; priv->modified = FALSE; level->priv = priv; } static void level_finalize (GObject *object) { LevelPrivate *priv; Level* level = LEVEL (object); priv = level->priv; if (priv->name) g_free (priv->name); if (priv->formula) g_free (priv->formula); if (priv->goal) g_object_unref (priv->goal); if (priv->environment) g_object_unref (priv->environment); if (priv->scenario) g_object_unref (priv->scenario); if (priv->file_name) g_free (priv->file_name); g_free (level->priv); level->priv = NULL; } Level *level_new (void) { Level *level; level = LEVEL (g_object_new (LEVEL_TYPE, NULL)); return level; } gchar *level_get_name (Level *level) { g_return_val_if_fail (IS_LEVEL (level), NULL); return level->priv->name; } gchar *level_get_formula (Level *level) { g_return_val_if_fail (IS_LEVEL (level), NULL); return level->priv->formula; } PlayField *level_get_environment (Level *level) { g_return_val_if_fail (IS_LEVEL (level), NULL); g_object_ref (level->priv->environment); return level->priv->environment; } PlayField *level_get_goal (Level *level) { g_return_val_if_fail (IS_LEVEL (level), NULL); g_object_ref (level->priv->goal); return level->priv->goal; } PlayField *level_get_scenario (Level *level) { g_return_val_if_fail (IS_LEVEL (level), NULL); g_object_ref (level->priv->scenario); return level->priv->scenario; } #if 0 void level_save_xml (Level *level, gchar *filename) { xmlDocPtr doc; xmlAttrPtr attr; xmlNodePtr level_node; xmlNodePtr playfield_node; xmlNodePtr goal_node; xmlNodePtr child_node; gchar *str_buffer; gint length; str_buffer = g_malloc(5 * sizeof (gchar)); /* create xml doc */ doc = xmlNewDoc ("1.0"); xmlSetDocCompressMode (doc, 9); /* level name */ level_node = xmlNewDocNode (doc, NULL, "LEVEL", NULL); doc->xmlRootNode = level_node; attr = xmlSetProp (level_node, "name", g_strdup(level->name)); /* set revision number */ child_node = xmlNewChild (level_node, NULL, "REVISION", "2"); /* time */ child_node = xmlNewChild (level_node, NULL, "TIME", NULL); length = g_snprintf (str_buffer, 5, "%i", level->time); attr = xmlSetProp (child_node, "secs", g_strdup (str_buffer)); /* level */ child_node = xmlNewChild (level_node, NULL, "LEVEL", NULL); attr = xmlSetProp (child_node, "name", g_strdup (level->level_name)); /* next */ child_node = xmlNewChild (level_node, NULL, "NEXT", NULL); attr = xmlSetProp (child_node, "level", g_strdup (level->next)); /* first level */ if (level->first_level) { child_node = xmlNewChild (level_node, NULL, "FIRST_LEVEL", NULL); } /* bonus level */ if (level->bonus_level) { child_node = xmlNewChild (level_node, NULL, "BONUS_LEVEL", NULL); } /* Playfield */ playfield_node = xmlNewChild (level_node, NULL, "PLAYFIELD", NULL); playfield_save_xml (level->playfield, playfield_node); /* Goal */ goal_node = xmlNewChild (level_node, NULL, "GOAL", NULL); playfield_save_xml (level->goal, goal_node); xmlSaveFile (filename, doc); xmlFreeDoc (doc); g_free (str_buffer); } #endif atomix-2.14.0/src/level.h0000644000175000017500000000347010357257614012105 00000000000000/* Atomix -- a little puzzle game about atoms and molecules. * Copyright (C) 1999-2001 Jens Finke * Copyright (C) 2005 Guilherme de S. Pastore * * 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 2 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, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifndef _ATOMIX_LEVEL_H #define _ATOMIX_LEVEL_H #include #include "playfield.h" #define LEVEL_TYPE (level_get_type ()) #define LEVEL(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), LEVEL_TYPE, Level)) #define LEVEL_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), LEVEL_TYPE, LevelClass)) #define IS_LEVEL(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), LEVEL_TYPE)) #define IS_LEVEL_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), LEVEL_TYPE)) #define LEVEL_GET_CLASS(o)(G_TYPE_INSTANCE_GET_CLASS ((o), LEVEL_TYPE, LevelClass)) typedef struct _LevelPrivate LevelPrivate; typedef struct { GObject parent; LevelPrivate *priv; } Level; typedef struct { GObjectClass parent_class; } LevelClass; GType level_get_type (void); gchar *level_get_name (Level *level); gchar *level_get_formula (Level *level); PlayField* level_get_environment (Level *level); PlayField* level_get_scenario (Level *level); PlayField* level_get_goal (Level *level); #endif /* _ATOMIX_LEVEL_H */ atomix-2.14.0/src/level-private.h0000644000175000017500000000263010357257614013552 00000000000000/* Atomix -- a little puzzle game about atoms and molecules. * Copyright (C) 2001 Jens Finke * Copyright (C) 2005 Guilherme de S. Pastore * * 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 2 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, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifndef _ATOMIX_LEVEL_PRIVATE_H_ #define _ATOMIX_LEVEL_PRIVATE_H_ #include "playfield.h" struct _LevelPrivate { gchar *name; /* name of the level */ gchar *formula; /* formula of the compound */ PlayField *environment; PlayField *scenario; /* starting situation */ PlayField *goal; /* determines the end of the level */ /* the following fields are only used by atomixed */ gchar *file_name; /* file name of the level */ gboolean modified; /* whether the level is modified */ }; Level *level_new (void); #endif /* _ATOMIX_LEVEL_PRIVATE_H_ */ atomix-2.14.0/src/level-manager.c0000644000175000017500000002422410357257614013510 00000000000000/* Atomix -- a little puzzle game about atoms and molecules. * Copyright (C) 2001 Jens Finke * Copyright (C) 2005 Guilherme de S. Pastore * * 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 2 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, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include #include #include #include #include #include #include "level-manager.h" #include "level-private.h" static void search_level_in_dir (LevelManager *lm, gchar *dir_path); static gchar *lookup_level_name (gchar *filename); static void add_level (LevelManager *lm, gchar *levelname, gchar *filename); static Level *load_level (gchar *filename); static GObjectClass *parent_class = NULL; static void level_manager_class_init (GObjectClass *class); static void level_manager_init (LevelManager *tm); static void level_manager_finalize (GObject *object); struct _LevelManagerPrivate { gboolean initialized; GList *level_seq; GHashTable *levels; }; GType level_manager_get_type (void) { static GType object_type = 0; if (!object_type) { static const GTypeInfo object_info = { sizeof (LevelManagerClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) level_manager_class_init, NULL, /* clas_finalize */ NULL, /* class_data */ sizeof (LevelManager), 0, /* n_preallocs */ (GInstanceInitFunc) level_manager_init, }; object_type = g_type_register_static (G_TYPE_OBJECT, "LevelManager", &object_info, 0); } return object_type; } /*================================================================= Level_Manager creation, initialisation and clean up ---------------------------------------------------------------*/ static void level_manager_class_init (GObjectClass *class) { parent_class = g_type_class_ref (G_TYPE_OBJECT); class->finalize = level_manager_finalize; } static void level_manager_init (LevelManager *tm) { LevelManagerPrivate *priv; priv = g_new0 (LevelManagerPrivate, 1); priv->initialized = FALSE; priv->level_seq = NULL; priv->levels = g_hash_table_new_full ((GHashFunc) g_str_hash, (GCompareFunc) g_str_equal, (GDestroyNotify) g_free, (GDestroyNotify) g_free); tm->priv = priv; } static void level_manager_finalize (GObject *object) { LevelManager *tm = LEVEL_MANAGER (object); g_hash_table_destroy (tm->priv->levels); g_free (tm->priv); tm->priv = NULL; } LevelManager *level_manager_new (void) { LevelManager *lm; lm = LEVEL_MANAGER (g_object_new (LEVEL_MANAGER_TYPE, NULL)); return lm; } static void create_level_sequence (LevelManager *lm, gchar *file) { xmlDocPtr doc; xmlNodePtr node; g_return_if_fail (IS_LEVEL_MANAGER (lm)); if (!g_file_test (file, G_FILE_TEST_IS_REGULAR)) return; doc = xmlParseFile (file); if (doc == NULL) return; node = doc->xmlRootNode; if (!g_ascii_strcasecmp (node->name, "levelsequence")) { for (node = node->xmlChildrenNode; node != NULL; node = node->next) { if (!g_ascii_strcasecmp (node->name, "level")) { lm->priv->level_seq = g_list_append (lm->priv->level_seq, g_strdup (xmlGetProp (node, "name"))); } else if (!g_ascii_strcasecmp (node->name, "text")) { } else { g_warning ("Ignoring unknown xml tag: %s", node->name); } } } } void level_manager_init_levels (LevelManager *lm) { gchar *dir_path; gchar *sequence_file; g_return_if_fail (IS_LEVEL_MANAGER (lm)); g_return_if_fail (!lm->priv->initialized); /* load the sequence of the levels */ sequence_file = g_build_filename (g_get_home_dir (), ".atomix", "level", "sequence", NULL); create_level_sequence (lm, sequence_file); g_free (sequence_file); if (g_list_length (lm->priv->level_seq) == 0) { sequence_file = g_build_filename (DATADIR, "atomix", "level", "sequence", NULL); create_level_sequence (lm, sequence_file); g_free (sequence_file); if (g_list_length (lm->priv->level_seq) == 0) { g_warning (_("Couldn't find level sequence description.")); } } /* search for all levels */ dir_path = g_build_filename (g_get_home_dir (), ".atomix", "level", NULL); search_level_in_dir (lm, dir_path); g_free (dir_path); dir_path = g_build_filename (DATADIR, "atomix", "level", NULL); search_level_in_dir (lm, dir_path); g_free (dir_path); if (g_hash_table_size (lm->priv->levels) == 0) g_warning (_("No level found.")); lm->priv->initialized = TRUE; } gboolean level_manager_is_last_level (LevelManager *lm, Level *level) { GList *last; g_return_val_if_fail (IS_LEVEL_MANAGER (lm), TRUE); g_return_val_if_fail (lm->priv->initialized, TRUE); g_return_val_if_fail (IS_LEVEL (level), TRUE); last = g_list_last (lm->priv->level_seq); if (last == NULL) return TRUE; return !g_ascii_strcasecmp ((gchar *) last->data, level_get_name (level)); } static void search_level_in_dir (LevelManager *lm, gchar *dir_path) { struct dirent *dent = NULL; DIR *dir; g_return_if_fail (IS_LEVEL_MANAGER (lm)); dir = opendir (dir_path); if (dir) { gchar *filename; while ((dent = readdir (dir)) != NULL) { if (g_ascii_strcasecmp (".", dent->d_name) && g_ascii_strcasecmp ("..", dent->d_name) && g_ascii_strcasecmp ("sequence", dent->d_name)) { gchar *levelname; filename = g_build_filename (dir_path, dent->d_name, NULL); levelname = lookup_level_name (filename); add_level (lm, levelname, filename); g_free (filename); g_free (levelname); } } g_free (dent); closedir (dir); } } static gchar *lookup_level_name (gchar *filename) { xmlDocPtr doc; xmlNodePtr node; gchar *name = NULL; g_return_val_if_fail (filename != NULL, NULL); g_return_val_if_fail (g_file_test (filename, G_FILE_TEST_EXISTS), NULL); /* read file */ doc = xmlParseFile (filename); if (doc == NULL) { g_warning ("Couldn't parse level file: %s", filename); return NULL; } node = doc->xmlRootNode; if (node && !g_ascii_strcasecmp (node->name, "level")) name = g_strdup (xmlGetProp (node, "_name")); xmlFreeDoc (doc); return name; } static void add_level (LevelManager *lm, gchar *levelname, gchar *filename) { gchar *search_result; g_return_if_fail (IS_LEVEL_MANAGER (lm)); g_return_if_fail (levelname != NULL); g_return_if_fail (filename != NULL); /* don't add a theme twice */ search_result = g_hash_table_lookup (lm->priv->levels, levelname); if (search_result == NULL) { g_hash_table_insert (lm->priv->levels, g_strdup (levelname), g_strdup (filename)); #ifdef DEBUG g_message (_("Found level '%s' in: %s"), levelname, filename); #endif } } Level *level_manager_get_next_level (LevelManager *lm, Level *current_level) { LevelManagerPrivate *priv; gchar *levelname = NULL; gchar *filename = NULL; Level *level = NULL; g_return_val_if_fail (IS_LEVEL_MANAGER (lm), NULL); g_return_val_if_fail (lm->priv->initialized, NULL); if (g_list_length (lm->priv->level_seq) == 0) return NULL; priv = lm->priv; if (current_level == NULL) { levelname = (gchar *) g_list_first (priv->level_seq)->data; } else { GList *result; result = g_list_find_custom (priv->level_seq, level_get_name (current_level), (GCompareFunc) g_ascii_strcasecmp); if (result != NULL) { result = result->next; if (result != NULL) levelname = (gchar *) result->data; } } if (levelname != NULL) { filename = g_hash_table_lookup (lm->priv->levels, levelname); if (filename != NULL) level = load_level (filename); } return level; } static void add_level_to_list (gchar *key, gpointer value, GList **list) { *list = g_list_insert_sorted (*list, key, (GCompareFunc) g_ascii_strcasecmp); } GList *level_manager_get_available_levels (LevelManager *lm) { GList *list = NULL; g_return_val_if_fail (IS_LEVEL_MANAGER (lm), NULL); g_hash_table_foreach (lm->priv->levels, (GHFunc) add_level_to_list, &list); return list; } static Level *load_level (gchar *filename) { xmlDocPtr doc; xmlNodePtr node; Level *level = NULL; gchar *prop_value; g_return_val_if_fail (filename != NULL, NULL); if (!g_file_test (filename, G_FILE_TEST_IS_REGULAR)) { g_warning ("Level not found %s.", filename); return NULL; } doc = xmlParseFile (filename); if (doc == NULL) { g_warning ("XML file %s couldn't be parsed.", filename); return NULL; } level = level_new (); node = doc->xmlRootNode; while (node != NULL) { if (!g_ascii_strcasecmp (node->name, "level")) { prop_value = xmlGetProp (node, "_name"); level->priv->name = g_strdup (prop_value); prop_value = xmlGetProp (node, "formula"); level->priv->formula = g_strdup (prop_value); node = node->xmlChildrenNode; } else { if (!g_ascii_strcasecmp (node->name, "environment")) { level->priv->environment = playfield_new_from_xml (node->xmlChildrenNode); } else if (!g_ascii_strcasecmp (node->name, "goal")) { level->priv->goal = playfield_new_from_xml (node->xmlChildrenNode); } else if (!g_ascii_strcasecmp (node->name, "scenario")) { level->priv->scenario = playfield_new_from_xml (node->xmlChildrenNode); } else if (!g_ascii_strcasecmp (node->name, "text")) { } else { g_message ("Skipping unknown tag %s.", node->name); } node = node->next; } } xmlFreeDoc (doc); level->priv->file_name = g_path_get_basename (filename); return level; } atomix-2.14.0/src/level-manager.h0000644000175000017500000000411510336223355013502 00000000000000/* Atomix -- a little puzzle game about atoms and molecules. * Copyright (C) 2001 Jens Finke * Copyright (C) 2005 Guilherme de S. Pastore * * 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 2 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, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifndef _ATOMIX_LEVEL_MANAGER_H_ #define _ATOMIX_LEVEL_MANAGER_H_ #include #include "level.h" #define LEVEL_MANAGER_TYPE (level_manager_get_type ()) #define LEVEL_MANAGER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), LEVEL_MANAGER_TYPE, LevelManager)) #define LEVEL_MANAGER_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), LEVEL_MANAGER_TYPE, LevelManager)) #define IS_LEVEL_MANAGER(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), LEVEL_MANAGER_TYPE)) #define IS_LEVEL_MANAGER_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), LEVEL_MANAGER_TYPE)) #define LEVEL_MANAGER_GET_CLASS(o)(G_TYPE_INSTANCE_GET_CLASS ((o), LEVEL_MANAGER_TYPE, LevelManagerClass)) typedef struct _LevelManagerPrivate LevelManagerPrivate; typedef struct { GObject parent; LevelManagerPrivate *priv; } LevelManager; typedef struct { GObjectClass parent_class; } LevelManagerClass; GType level_manager_get_type (void); LevelManager *level_manager_new (void); void level_manager_init_levels (LevelManager * lm); Level *level_manager_get_next_level (LevelManager * lm, Level * current_level); GList *level_manager_get_available_levels (LevelManager * lm); gboolean level_manager_is_last_level (LevelManager * lm, Level * level); #endif /* _ATOMIX_LEVEL_MANAGER_H_ */ atomix-2.14.0/src/canvas_helper.c0000644000175000017500000000430710336223355013573 00000000000000/* Atomix -- a little puzzle game about atoms and molecules. * Copyright (C) 1999-2001 Jens Finke * Copyright (C) 2005 Guilherme de S. Pastore * * 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 2 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, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include "main.h" #include "math.h" #include "canvas_helper.h" void set_background_color (GtkWidget *canvas, GdkColor *color) { /* try to alloc color */ if (gdk_color_alloc (gdk_colormap_get_system (), color)) { GtkStyle *style; style = gtk_style_copy (gtk_widget_get_style (GTK_WIDGET (canvas))); /* set new style */ style->bg[GTK_STATE_NORMAL] = *color; gtk_widget_set_style (GTK_WIDGET (canvas), style); } } void convert_to_playfield (Theme *theme, gdouble x, gdouble y, guint *row, guint *col) { guint int_y, int_x; gint tile_width, tile_height; theme_get_tile_size (theme, &tile_width, &tile_height); int_y = (guint) ceil (y); *row = (int_y / tile_height); int_x = (guint) ceil (x); *col = (int_x / tile_width); } void convert_to_canvas (Theme *theme, guint row, guint col, gdouble *x, gdouble *y) { gint tile_width, tile_height; theme_get_tile_size (theme, &tile_width, &tile_height); *x = col * tile_width; *y = row * tile_height; } GnomeCanvasGroup *create_group (GnomeCanvas *canvas, GnomeCanvasGroup *parent) { GnomeCanvasGroup *group; if (parent == NULL) { parent = gnome_canvas_root (canvas); } group = GNOME_CANVAS_GROUP (gnome_canvas_item_new (parent, gnome_canvas_group_get_type (), "x", 0.0, "y", 0.0, NULL)); return group; } atomix-2.14.0/src/canvas_helper.h0000644000175000017500000000251210336223355013574 00000000000000/* Atomix -- a little puzzle game about atoms and molecules. * Copyright (C) 1999-2001 Jens Finke * Copyright (C) 2005 Guilherme de S. Pastore * * 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 2 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, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifndef _ATOMIX_CANVAS_HELPER_H_ #define _ATOMIX_CANVAS_HELPER_H_ #include #include "theme.h" void set_background_color (GtkWidget * canvas, GdkColor * color); void convert_to_playfield (Theme * theme, gdouble x, gdouble y, guint * row, guint * col); void convert_to_canvas (Theme * theme, guint row, guint col, gdouble * x, gdouble * y); GnomeCanvasGroup *create_group (GnomeCanvas * canvas, GnomeCanvasGroup * parent); #endif /* _ATOMIX_CANVAS_HELPER_H_ */ atomix-2.14.0/src/playfield.c0000644000175000017500000005114510336223355012734 00000000000000/* Atomix -- a little puzzle game about atoms and molecules. * Copyright (C) 1999-2001 Jens Finke * Copyright (C) 2005 Guilherme de S. Pastore * * 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 2 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, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include "playfield.h" Tile *get_tile (PlayField *pf, gint row, gint col); void set_tile (PlayField *pf, gint row, gint col, Tile *tile); static void read_tile (PlayField *pf, guint row, guint col, xmlNodePtr node); static GObjectClass *parent_class = NULL; static void playfield_class_init (GObjectClass *class); static void playfield_init (PlayField *pf); static void playfield_finalize (GObject *object); struct _PlayFieldPrivate { guint n_rows; guint n_cols; Tile **matrix; }; GType playfield_get_type (void) { static GType object_type = 0; if (!object_type) { static const GTypeInfo object_info = { sizeof (PlayFieldClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) playfield_class_init, NULL, /* clas_finalize */ NULL, /* class_data */ sizeof (PlayField), 0, /* n_preallocs */ (GInstanceInitFunc) playfield_init, }; object_type = g_type_register_static (G_TYPE_OBJECT, "PlayField", &object_info, 0); } return object_type; } static void playfield_class_init (GObjectClass *class) { parent_class = g_type_class_ref (G_TYPE_OBJECT); class->finalize = playfield_finalize; } static void playfield_init (PlayField *pf) { PlayFieldPrivate *priv; priv = g_new0 (PlayFieldPrivate, 1); priv->n_rows = 0; priv->n_cols = 0; priv->matrix = NULL; pf->priv = priv; } static void playfield_finalize (GObject *object) { gint row, col; PlayField *pf = PLAYFIELD (object); #ifdef DEBUG g_message ("Finalize Playfield."); #endif for (row = 0; row < pf->priv->n_rows; row++) for (col = 0; col < pf->priv->n_cols; col++) { Tile *tile = get_tile (pf, row, col); if (tile) g_object_unref (tile); } g_free (pf->priv->matrix); g_free (pf->priv); pf->priv = NULL; } PlayField *playfield_new (void) { PlayField *pf; pf = PLAYFIELD (g_object_new (PLAYFIELD_TYPE, NULL)); return pf; } Tile *get_tile (PlayField *pf, gint row, gint col) { PlayFieldPrivate *priv; g_return_val_if_fail (IS_PLAYFIELD (pf), NULL); priv = pf->priv; return priv->matrix[row * priv->n_cols + col]; } void set_tile (PlayField *pf, gint row, gint col, Tile *new_tile) { Tile *tile; PlayFieldPrivate *priv; g_return_if_fail (IS_PLAYFIELD (pf)); priv = pf->priv; tile = get_tile (pf, row, col); if (tile) g_object_unref (tile); priv->matrix[row * priv->n_cols + col] = new_tile; } guint playfield_get_n_rows (PlayField *pf) { g_return_val_if_fail (IS_PLAYFIELD (pf), 0); return pf->priv->n_rows; } guint playfield_get_n_cols (PlayField *pf) { g_return_val_if_fail (IS_PLAYFIELD (pf), 0); return pf->priv->n_cols; } void playfield_add_row (PlayField *pf) { Tile **new_matrix; int n_rows, n_cols; g_return_if_fail (IS_PLAYFIELD (pf)); n_rows = pf->priv->n_rows; n_cols = pf->priv->n_cols; new_matrix = g_malloc0 ((n_rows + 1) * n_cols * sizeof (Tile *)); if (new_matrix == NULL) return; memcpy (new_matrix, pf->priv->matrix, n_rows * n_cols * sizeof (Tile *)); g_free (pf->priv->matrix); pf->priv->matrix = new_matrix; pf->priv->n_rows++; } void playfield_add_column (PlayField *pf) { Tile **new_matrix; int n_rows, n_cols; g_return_if_fail (IS_PLAYFIELD (pf)); n_rows = pf->priv->n_rows; n_cols = pf->priv->n_cols; new_matrix = g_malloc0 (n_rows * (n_cols + 1) * sizeof (Tile *)); if (new_matrix == NULL) return; memcpy (new_matrix, pf->priv->matrix, n_rows * n_cols * sizeof (Tile *)); g_free (pf->priv->matrix); pf->priv->matrix = new_matrix; pf->priv->n_cols++; } void playfield_set_matrix_size (PlayField *pf, guint n_rows, guint n_cols) { gint row = 0; gint col = 0; guint old_n_rows; guint old_n_cols; Tile **new_matrix; g_return_if_fail (IS_PLAYFIELD (pf)); old_n_rows = pf->priv->n_rows; old_n_cols = pf->priv->n_cols; if (n_rows == 0 || n_cols == 0) return; if (old_n_rows == n_rows && old_n_cols == n_cols) return; if (old_n_rows > n_rows || old_n_cols > n_cols) { // free the left over tiles; for (row = 0; row < old_n_rows; row++) { for (col = 0; col < old_n_cols; col++) { Tile *tile = get_tile (pf, row, col); if (row >= n_rows && tile) g_object_unref (tile); else if (col >= n_cols && tile) g_object_unref (tile); } } } new_matrix = g_malloc0 (n_rows * n_cols * sizeof (Tile *)); memcpy (new_matrix, pf->priv->matrix, old_n_rows * old_n_cols * sizeof (Tile *)); g_free (pf->priv->matrix); pf->priv->matrix = new_matrix; pf->priv->n_rows = n_rows; pf->priv->n_cols = n_cols; } PlayField *playfield_copy (PlayField *pf) { PlayField *pf_copy = NULL; gint row, col; gint matrix_size; g_return_val_if_fail (IS_PLAYFIELD (pf), NULL); pf_copy = playfield_new (); g_assert (IS_PLAYFIELD (pf_copy)); matrix_size = pf->priv->n_rows * pf->priv->n_cols * sizeof (Tile *); pf_copy->priv->matrix = g_malloc0 (matrix_size); pf_copy->priv->n_rows = pf->priv->n_rows; pf_copy->priv->n_cols = pf->priv->n_cols; for (row = 0; row < pf->priv->n_rows; row++) for (col = 0; col < pf->priv->n_cols; col++) playfield_set_tile (pf_copy, row, col, get_tile (pf, row, col)); return pf_copy; } void playfield_swap_tiles (PlayField *pf, guint src_row, guint src_col, guint dest_row, guint dest_col) { Tile *src_tile; Tile *dest_tile; gint n_rows, n_cols; g_return_if_fail (IS_PLAYFIELD (pf)); n_rows = pf->priv->n_rows; n_cols = pf->priv->n_cols; g_return_if_fail (src_row < n_rows && dest_row < n_cols && src_col < n_cols && dest_col < n_cols); src_tile = get_tile (pf, src_row, src_col); if (src_tile) g_object_ref (src_tile); dest_tile = get_tile (pf, dest_row, dest_col); if (dest_tile) g_object_ref (dest_tile); playfield_set_tile (pf, src_row, src_col, dest_tile); playfield_set_tile (pf, dest_row, dest_col, src_tile); if (src_tile) g_object_unref (src_tile); if (dest_tile) g_object_unref (dest_tile); } Tile *playfield_clear_tile (PlayField *pf, guint row, guint col) { Tile *tile; g_return_val_if_fail (IS_PLAYFIELD (pf), NULL); g_return_val_if_fail (row < pf->priv->n_rows && col < pf->priv->n_cols, NULL); tile = get_tile (pf, row, col); if (tile) { g_object_ref (tile); set_tile (pf, row, col, NULL); } return tile; } void playfield_clear (PlayField *pf) { gint row, col; g_return_if_fail (IS_PLAYFIELD (pf)); for (row = 0; row < pf->priv->n_rows; row++) for (col = 0; col < pf->priv->n_cols; col++) set_tile (pf, row, col, NULL); } PlayField *playfield_strip (PlayField *pf) { PlayField *stripped_pf; gint row, col; gint n_rows, n_cols; gint max_row = 0; gint min_row = 10000; gint max_col = 0; gint min_col = 10000; g_return_val_if_fail (IS_PLAYFIELD (pf), NULL); /* determine the really used playfield size */ for (row = 0; row < pf->priv->n_rows; row++) { for (col = 0; col < pf->priv->n_cols; col++) { Tile *tile = get_tile (pf, row, col); if (tile != NULL) { max_row = MAX (max_row, row); min_row = MIN (min_row, row); max_col = MAX (max_col, col); min_col = MIN (min_col, col); } } } /* number of columns and rows in the stripped playfield */ n_rows = max_row - min_row + 1; n_cols = max_col - min_col + 1; if (pf->priv->n_rows == n_rows && pf->priv->n_cols == n_cols) return g_object_ref (pf); stripped_pf = playfield_new (); playfield_set_matrix_size (stripped_pf, n_rows, n_cols); for (row = min_row; row <= max_row; row++) for (col = min_col; col <= max_col; col++) { Tile *tile; tile = get_tile (pf, row, col); playfield_set_tile (stripped_pf, row - min_row, col - min_col, tile); } return stripped_pf; } Tile *playfield_get_tile (PlayField *pf, guint row, guint col) { Tile *tile; g_return_val_if_fail (IS_PLAYFIELD (pf), NULL); g_return_val_if_fail (row < pf->priv->n_rows && col < pf->priv->n_cols, NULL); tile = get_tile (pf, row, col); if (tile) g_object_ref (tile); return tile; } void playfield_set_tile (PlayField *pf, guint row, guint col, Tile *tile) { g_return_if_fail (IS_PLAYFIELD (pf)); g_return_if_fail (row < pf->priv->n_rows && col < pf->priv->n_cols); if (tile) g_object_ref (tile); set_tile (pf, row, col, tile); } void playfield_print (PlayField *pf) { PlayFieldPrivate *priv; int row, col; Tile *tile; g_return_if_fail (IS_PLAYFIELD (pf)); priv = pf->priv; g_print ("N_ROWS: %d\n", priv->n_rows); g_print ("N_COLS: %d\n", priv->n_cols); for (row = 0; row < priv->n_rows; row++) { for (col = 0; col < priv->n_cols; col++) { tile = get_tile (pf, row, col); if (tile) tile_print (tile); else g_print ("NULL "); } g_print ("\n"); } g_print ("\n"); } PlayField *playfield_new_from_xml (xmlNodePtr node) { xmlNodePtr child_node; PlayField *pf; gint row, col; gint n_rows, n_cols; gchar *prop_value; gchar *content; g_return_val_if_fail (node != NULL, NULL); pf = playfield_new (); row = 0; col = 0; n_rows = 0; n_cols = 0; /* reading non empty tiles */ for (; node != NULL; node = node->next) { if (!g_ascii_strcasecmp (node->name, "n_rows")) { content = xmlNodeGetContent (node); n_rows = atoi (content); } else if (!g_ascii_strcasecmp (node->name, "n_columns")) { content = xmlNodeGetContent (node); n_cols = atoi (content); playfield_set_matrix_size (pf, n_rows, n_cols); } else if (!g_ascii_strcasecmp (node->name, "row")) { prop_value = xmlGetProp (node, "no"); row = atoi (prop_value); for (child_node = node->xmlChildrenNode; child_node != NULL; child_node = child_node->next) { if (!g_ascii_strcasecmp (child_node->name, "col")) { prop_value = xmlGetProp (child_node, "no"); col = atoi (prop_value); read_tile (pf, row, col, child_node->xmlChildrenNode); } } } else if (!g_ascii_strcasecmp (node->name, "text")) { } else { g_warning ("Skipping unexpected Tag %s.", node->name); } } return pf; } static void read_tile (PlayField *pf, guint row, guint col, xmlNodePtr node) { Tile *tile; for (; node != NULL; node = node->next) { if (!g_ascii_strcasecmp (node->name, "tile")) { tile = tile_new_from_xml (node); playfield_set_tile (pf, row, col, tile); g_object_unref (tile); } } } #if 0 /* * Creates the XML representation of an PlayField. * pf = Playfield to save * pf_node = reference to the Tag node */ void playfield_save_xml (PlayField *pf, xmlNodePtr pf_node) { PlayFieldPrivate *priv; gint row, col; xmlAttrPtr attr; xmlNodePtr tile_node; gint max_row = 0; gint min_row = 10000; gint max_col = 0; gint min_col = 10000; gint n_rows, n_cols; g_return_if_fail (IS_PLAYFIELD (pf)); priv = pf->priv; /* determine the really used playfield size */ for (row = 0; row < priv->n_rows; row++) { for (col = 0; col < priv->n_cols; col++) { Tile *tile = playfield_get_tile (pf, row, col); if (tile_get_tile_type (tile) != TILE_TYPE_UNKNOWN) { max_row = MAX (max_row, row); min_row = MIN (min_row, row); max_col = MAX (max_col, col); min_col = MIN (min_col, col); } } } /* number of columns and rows */ n_rows = max_row - min_row + 1; n_cols = max_col - min_col + 1; if ((n_rows > 0) && (n_cols > 0)) { gchar *str_buffer; gint length; str_buffer = g_malloc (5 * sizeof (gchar)); length = g_snprintf (str_buffer, 5, "%i", n_rows); attr = xmlSetProp (pf_node, "rows", g_strdup (str_buffer)); length = g_snprintf (str_buffer, 5, "%i", n_cols); attr = xmlSetProp (pf_node, "cols", g_strdup (str_buffer)); /* add every non empty tile */ for (row = 0; row < priv->n_rows; row++) { for (col = 0; col < priv->n_cols; col++) { Tile *tile = playfield_get_tile (pf, row, col); if (tile_get_tile_type (tile) != TILE_TYPE_UNKNOWN) { tile_node = xmlNewChild (pf_node, NULL, "TILE", NULL); length = g_snprintf (str_buffer, 5, "%i", row - min_row); attr = xmlSetProp (tile_node, "row", g_strdup (str_buffer)); length = g_snprintf (str_buffer, 5, "%i", col - min_col); attr = xmlSetProp (tile_node, "col", g_strdup (str_buffer)); tile_save_xml (tile, tile_node); } } } g_free (str_buffer); } else { gchar *str_buffer; gint length; str_buffer = g_malloc (5 * sizeof (gchar)); length = g_snprintf (str_buffer, 5, "%i", priv->n_rows); attr = xmlSetProp (pf_node, "rows", g_strdup (str_buffer)); length = g_snprintf (str_buffer, 5, "%i", priv->n_cols); attr = xmlSetProp (pf_node, "cols", g_strdup (str_buffer)); g_free (str_buffer); } } #endif /*================================================================= Functions for generating playfields from basic level descriptions. -----------------------------------------------------------------*/ typedef struct { GQuark id; gchar *string; } TranslationItem; static TranslationItem wall_map[] = { {0, "wall-single"}, {1, "wall-vertical-bottom-end"}, {2, "wall-horizontal-left-end"}, {3, "wall-bottom-left"}, {4, "wall-vertical-top-end"}, {5, "wall-vertical"}, {6, "wall-top-left"}, {7, "wall-vertical-rightx"}, {8, "wall-horizontal-right-end"}, {9, "wall-bottom-right"}, {10, "wall-horizontal"}, {11, "wall-horizontal-topx"}, {12, "wall-top-right"}, {13, "wall-vertical-leftx"}, {14, "wall-horizontal-bottomx"}, {15, "wall-single"}, {0, NULL} }; static void setup_translation_map (TranslationItem array[]) { gint i = 0; for (; array[i].string != NULL; i++) array[i].id = g_quark_from_string (array[i].string); } enum { ENV_TOP, ENV_RIGHT, ENV_BOTTOM, ENV_LEFT, ENV_TOP_RIGHT, ENV_BOTTOM_RIGHT, ENV_BOTTOM_LEFT, ENV_TOP_LEFT, ENV_LAST }; typedef struct { int row; int col; } offset; static const offset env_offset[8] = { {-1, 0}, /* ENV_TOP */ {0, 1}, /* ENV_RIGHT */ {1, 0}, /* ENV_BOTTOM */ {0, -1}, /* ENV_LEFT */ {-1, 1}, /* ENV_TOP_RIGHT */ {1, 1}, /* ENV_BOTTOM_RIGHT */ {1, -1}, /* ENV_BOTTOM_LEFT */ {-1, -1} /* ENV_TOP_LEFT */ }; static TileType get_env_tile_type (PlayField *pf, gint row, gint col) { Tile *tile; TileType type = TILE_TYPE_NONE; if (row < 0) return type; if (col < 0) return type; if (row >= playfield_get_n_rows (pf)) return type; if (col >= playfield_get_n_cols (pf)) return type; tile = get_tile (pf, row, col); if (tile) { type = tile_get_tile_type (tile); } else type = TILE_TYPE_FLOOR; return type; } static void create_tile_env (PlayField *pf, gint row, gint col, int tile_env[]) { gint i; TileType type; for (i = ENV_TOP; i < ENV_LAST; i++) { type = get_env_tile_type (pf, row + env_offset[i].row, col + env_offset[i].col); tile_env[i] = (int) type; } } static Tile *convert_wall_tiles (Tile *tile, int tile_env[]) { Tile *new_tile = NULL; gint wall_id = 0; gint i; if (tile == NULL) return NULL; new_tile = tile_copy (tile); if (tile_get_tile_type (new_tile) != TILE_TYPE_WALL) return new_tile; for (i = ENV_LEFT; i >= ENV_TOP; i--) { if (tile_env[i] == TILE_TYPE_WALL) wall_id = wall_id + 1; if (i != ENV_TOP) wall_id = wall_id << 1; } tile_set_base_id (new_tile, wall_map[wall_id].id); return new_tile; } PlayField *playfield_generate_environment (PlayField *pf, Theme *theme) { PlayField *env_pf; PlayFieldPrivate *priv; gint row, col; gint tile_env[8]; Tile *env_tile; Tile *tile = NULL; gint n_decor_tiles; gint max_try; gint min_wall[2]; gint max_wall[2]; g_return_val_if_fail (IS_PLAYFIELD (pf), NULL); priv = pf->priv; if (wall_map[0].id == 0) setup_translation_map (wall_map); env_pf = playfield_new (); playfield_set_matrix_size (env_pf, playfield_get_n_rows (pf), playfield_get_n_cols (pf)); min_wall[0] = 10000; min_wall[1] = 10000; max_wall[0] = 0; max_wall[1] = 0; /* determine the really used playfield size */ for (row = 0; row < priv->n_rows; row++) { for (col = 0; col < priv->n_cols; col++) { create_tile_env (pf, row, col, tile_env); tile = get_tile (pf, row, col); env_tile = convert_wall_tiles (tile, tile_env); playfield_set_tile (env_pf, row, col, env_tile); if (env_tile) { if (tile_get_tile_type (env_tile) == TILE_TYPE_WALL) { min_wall[0] = MIN (min_wall[0], row); min_wall[1] = MIN (min_wall[1], col); max_wall[0] = MAX (max_wall[0], row); max_wall[1] = MAX (max_wall[1], col); } g_object_unref (env_tile); } } } /* apply decoration to some of the tiles */ n_decor_tiles = (max_wall[0] - min_wall[0]) * (max_wall[1] - min_wall[1]) * 0.03; while (n_decor_tiles--) { max_try = 4; /* maximum number of tries */ do { row = g_random_int_range (min_wall[0], max_wall[0]); col = g_random_int_range (min_wall[1], max_wall[1]); tile = get_tile (env_pf, row, col); } while (!theme_apply_decoration (theme, tile) && max_try--); } return env_pf; } static GQuark shadow_id[6] = { 0, 0, 0, 0, 0, 0 }; static Tile *convert_shadow_tiles (Tile *tile, int tile_env[]) { Tile *new_tile = NULL; gint base_id = 0; TileType type; if (tile != NULL) { type = tile_get_tile_type (tile); if (type != TILE_TYPE_FLOOR) return NULL; } if (tile_env[ENV_LEFT] == TILE_TYPE_WALL && tile_env[ENV_TOP] == TILE_TYPE_WALL) base_id = 6; /* top-left */ else if (tile_env[ENV_TOP_LEFT] != TILE_TYPE_WALL && tile_env[ENV_LEFT] != TILE_TYPE_WALL && tile_env[ENV_TOP] == TILE_TYPE_WALL) base_id = 2; else if (tile_env[ENV_TOP_LEFT] != TILE_TYPE_WALL && tile_env[ENV_LEFT] == TILE_TYPE_WALL && tile_env[ENV_TOP] != TILE_TYPE_WALL) base_id = 5; else if (tile_env[ENV_TOP_LEFT] == TILE_TYPE_WALL && tile_env[ENV_LEFT] != TILE_TYPE_WALL && tile_env[ENV_TOP] != TILE_TYPE_WALL) base_id = 4; else if (tile_env[ENV_TOP_LEFT] == TILE_TYPE_WALL && tile_env[ENV_LEFT] == TILE_TYPE_WALL && tile_env[ENV_TOP] != TILE_TYPE_WALL) base_id = 3; else if (tile_env[ENV_TOP_LEFT] == TILE_TYPE_WALL && tile_env[ENV_LEFT] != TILE_TYPE_WALL && tile_env[ENV_TOP] == TILE_TYPE_WALL) base_id = 1; if (base_id) { new_tile = tile_new (TILE_TYPE_SHADOW); tile_set_base_id (new_tile, shadow_id[base_id - 1]); } return new_tile; } PlayField *playfield_generate_shadow (PlayField *pf) { PlayField *env_pf; PlayFieldPrivate *priv; gint row, col; gint tile_env[8]; Tile *env_tile; Tile *tile; g_return_val_if_fail (IS_PLAYFIELD (pf), NULL); priv = pf->priv; if (!shadow_id[0]) { shadow_id[0] = g_quark_from_static_string ("shadow-top"); shadow_id[1] = g_quark_from_static_string ("shadow-top-left"); shadow_id[2] = g_quark_from_static_string ("shadow-left"); shadow_id[3] = g_quark_from_static_string ("shadow-bottom-right"); shadow_id[4] = g_quark_from_static_string ("shadow-left-top"); shadow_id[5] = g_quark_from_static_string ("shadow-top-left-both"); } env_pf = playfield_new (); playfield_set_matrix_size (env_pf, playfield_get_n_rows (pf) + 1, playfield_get_n_cols (pf) + 1); /* determine the really used playfield size */ for (row = 0; row <= priv->n_rows; row++) { for (col = 0; col <= priv->n_cols; col++) { create_tile_env (pf, row, col, tile_env); if (row != priv->n_rows && col != priv->n_cols) tile = get_tile (pf, row, col); else tile = NULL; env_tile = convert_shadow_tiles (tile, tile_env); playfield_set_tile (env_pf, row, col, env_tile); if (env_tile) g_object_unref (env_tile); } } return env_pf; } atomix-2.14.0/src/playfield.h0000644000175000017500000000537210336223355012742 00000000000000/* Atomix -- a little puzzle game about atoms and molecules. * Copyright (C) 1999-2001 Jens Finke * Copyright (C) 2005 Guilherme de S. Pastore * * 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 2 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, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifndef _ATOMIX_PLAY_FIELD_H #define _ATOMIX_PLAY_FIELD_H #include #include #include "tile.h" #include "theme.h" #define PLAYFIELD_TYPE (playfield_get_type ()) #define PLAYFIELD(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), PLAYFIELD_TYPE, PlayField)) #define PLAYFIELD_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), PLAYFIELD_TYPE, PlayFieldClass)) #define IS_PLAYFIELD(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), PLAYFIELD_TYPE)) #define IS_PLAYFIELD_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), PLAYFIELD_TYPE)) #define PLAYFIELD_GET_CLASS(o)(G_TYPE_INSTANCE_GET_CLASS ((o), PLAYFIELD_TYPE, PlayFieldClass)) typedef struct _PlayFieldPrivate PlayFieldPrivate; typedef struct { GObject parent; PlayFieldPrivate *priv; } PlayField; typedef struct { GObjectClass parent_class; } PlayFieldClass; GType playfield_get_type (void); PlayField *playfield_new (void); PlayField *playfield_new_from_xml (xmlNodePtr node); guint playfield_get_n_rows (PlayField * pf); guint playfield_get_n_cols (PlayField * pf); void playfield_add_row (PlayField * pf); void playfield_add_column (PlayField * pf); Tile *playfield_get_tile (PlayField * pf, guint row, guint col); void playfield_set_tile (PlayField * pf, guint row, guint col, Tile * tile); void playfield_set_matrix_size (PlayField * pf, guint n_rows, guint n_cols); PlayField *playfield_strip (PlayField * pf); PlayField *playfield_copy (PlayField * pf); Tile *playfield_clear_tile (PlayField * pf, guint row, guint col); void playfield_swap_tiles (PlayField * pf, guint src_row, guint src_col, guint dest_row, guint dest_col); void playfield_print (PlayField * pf); void playfield_clear (PlayField * pf); PlayField *playfield_generate_environment (PlayField * pf, Theme * theme); PlayField *playfield_generate_shadow (PlayField * pf); #if 0 void playfield_save_xml (PlayField * pf, xmlNodePtr node); #endif #endif /* _ATOMIX_PLAY_FIELD_H */ atomix-2.14.0/src/main.c0000644000175000017500000005046410357257614011722 00000000000000/* Atomix -- a little puzzle game about atoms and molecules. * Copyright (C) 1999-2001 Jens Finke * Copyright (C) 2005 Guilherme de S. Pastore * * 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 2 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, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include "config.h" #include #include #include #include #include #include #include "board.h" #include "playfield.h" #include "main.h" #include "goal.h" #include "level.h" #include "goal-view.h" #include "clock.h" #include "undo.h" AtomixApp *app; typedef enum { GAME_ACTION_NEW, GAME_ACTION_END, GAME_ACTION_PAUSE, GAME_ACTION_CONTINUE, GAME_ACTION_SKIP, GAME_ACTION_UNDO, GAME_ACTION_FINISHED, GAME_ACTION_RESTART, } GameAction; static void controller_handle_action (GameAction action); static void set_game_not_running_state (void); static gboolean set_next_level (void); static void setup_level (void); static void level_cleanup_view (void); static void atomix_exit (void); static gboolean on_key_press_event (GObject *widget, GdkEventKey *event, gpointer user_data); static void game_init (void); static void update_statistics (void); static void view_congratulations (void); static void calculate_score (void); static void log_score (void); /* =============================================================== Menu callback functions -------------------------------------------------------------- */ static void verb_GameNew_cb (BonoboUIComponent *uic, gpointer user_data, const char *cname) { controller_handle_action (GAME_ACTION_NEW); } static void verb_GameEnd_cb (BonoboUIComponent * uic, gpointer user_data, const char *cname) { controller_handle_action (GAME_ACTION_END); } static void verb_GameSkip_cb (BonoboUIComponent * uic, gpointer user_data, const char *cname) { controller_handle_action (GAME_ACTION_SKIP); } static void verb_GameReset_cb (BonoboUIComponent * uic, gpointer user_data, const char *cname) { controller_handle_action (GAME_ACTION_RESTART); } static void verb_GamePause_cb (BonoboUIComponent * uic, gpointer user_data, const char *cname) { controller_handle_action (GAME_ACTION_PAUSE); } static void verb_GameContinue_cb (BonoboUIComponent * uic, gpointer user_data, const char *cname) { controller_handle_action (GAME_ACTION_CONTINUE); } static void verb_GameUndo_cb (BonoboUIComponent * uic, gpointer user_data, const char *cname) { controller_handle_action (GAME_ACTION_UNDO); } static void verb_GameScores_cb (BonoboUIComponent * uic, gpointer user_data, const char *cname) { struct stat scores_file; stat (SCORESDIR "/atomix.scores", &scores_file); if (scores_file.st_size == 0) { GtkWidget *dlg = gtk_message_dialog_new (GTK_WINDOW (app->mainwin), GTK_DIALOG_MODAL, GTK_MESSAGE_INFO, GTK_BUTTONS_CLOSE, _("You have not achieved any " "scores yet. Play a little " "before coming back!")); gtk_dialog_run (GTK_DIALOG (dlg)); gtk_widget_destroy (GTK_WIDGET (dlg)); return; } gnome_scores_display ("Atomix", PACKAGE, NULL, 0); } static void verb_GameExit_cb (BonoboUIComponent * uic, gpointer user_data, const char *cname) { atomix_exit (); } static void verb_EditPreferences_cb (BonoboUIComponent * uic, gpointer user_data, const char *cname) { #if 0 preferences_show_dialog (); #endif } static void verb_HelpAbout_cb (BonoboUIComponent *uic, gpointer user_data, const char *cname) { GtkWidget *dlg; const char *authors[] = { "Guilherme de S. Pastore ", "Jens Finke ", NULL }; const char *artists[] = { "Jakub Steiner ", NULL }; dlg = gtk_about_dialog_new (); gtk_about_dialog_set_name (GTK_ABOUT_DIALOG(dlg), "Atomix"); gtk_about_dialog_set_version (GTK_ABOUT_DIALOG(dlg), VERSION); gtk_about_dialog_set_comments (GTK_ABOUT_DIALOG(dlg), _("A puzzle game about atoms and molecules")); gtk_about_dialog_set_website (GTK_ABOUT_DIALOG(dlg), "http://www.gnome.org/projects/atomix"); gtk_about_dialog_set_authors (GTK_ABOUT_DIALOG(dlg), authors); gtk_about_dialog_set_artists (GTK_ABOUT_DIALOG(dlg), artists); gtk_about_dialog_set_translator_credits (GTK_ABOUT_DIALOG(dlg), _("translator-credits")); gtk_widget_show (dlg); } static gboolean on_app_destroy_event (GtkWidget *widget, GdkEvent *event, gpointer user_data) { atomix_exit (); return TRUE; } /* =============================================================== Game steering functions -------------------------------------------------------------- */ static void controller_handle_action (GameAction action) { switch (app->state) { case GAME_STATE_NOT_RUNNING: if (action == GAME_ACTION_NEW) { if (set_next_level ()) { app->level_no = 1; app->score = 0; setup_level (); app->state = GAME_STATE_RUNNING_UNMOVED; } } break; case GAME_STATE_RUNNING_UNMOVED: case GAME_STATE_RUNNING: switch (action) { case GAME_ACTION_END: log_score (); level_cleanup_view (); set_game_not_running_state (); break; case GAME_ACTION_PAUSE: clock_stop (CLOCK (app->clock)); board_hide (); app->state = GAME_STATE_PAUSED; break; case GAME_ACTION_SKIP: level_cleanup_view (); if (set_next_level ()) setup_level (); else set_game_not_running_state (); break; case GAME_ACTION_FINISHED: calculate_score (); if (level_manager_is_last_level (app->lm, app->level)) { view_congratulations (); log_score (); level_cleanup_view (); set_game_not_running_state (); } else { level_cleanup_view (); set_next_level (); setup_level (); } break; case GAME_ACTION_RESTART: g_assert (app->state != GAME_STATE_RUNNING_UNMOVED); level_cleanup_view (); setup_level (); break; case GAME_ACTION_UNDO: g_assert (app->state != GAME_STATE_RUNNING_UNMOVED); board_undo_move (); break; default: break; } break; case GAME_STATE_PAUSED: if (action == GAME_ACTION_CONTINUE) { clock_start (CLOCK(app->clock)); board_show (); app->state = (undo_exists())?GAME_STATE_RUNNING:GAME_STATE_RUNNING_UNMOVED; } break; default: g_assert_not_reached (); } update_menu_item_state (); update_statistics (); } static void set_game_not_running_state (void) { board_show_logo (TRUE); if (app->level) g_object_unref (app->level); if (app->goal) g_object_unref (app->goal); app->level = NULL; app->goal = NULL; app->score = 0; app->state = GAME_STATE_NOT_RUNNING; } static gboolean set_next_level (void) { Level *next_level; PlayField *goal_pf; next_level = level_manager_get_next_level (app->lm, app->level); if (app->level) { g_object_unref (app->level); } app->level = NULL; if (app->goal) { g_object_unref (app->goal); } app->goal = NULL; if (next_level == NULL) { return FALSE; } app->level = next_level; app->level_no++; goal_pf = level_get_goal (app->level); app->goal = goal_new (goal_pf); g_object_unref (goal_pf); return TRUE; } static void setup_level (void) { PlayField *env_pf; PlayField *sce_pf; g_return_if_fail (app != NULL); if (app->level == NULL) return; g_return_if_fail (app->goal != NULL); /* init board */ env_pf = level_get_environment (app->level); sce_pf = level_get_scenario (app->level); board_show_logo (FALSE); board_init_level (env_pf, sce_pf, app->goal); /* init goal */ goal_view_render (app->goal); /* init clock */ clock_set_seconds (CLOCK(app->clock), 0); clock_start (CLOCK(app->clock)); g_object_unref (env_pf); g_object_unref (sce_pf); } static void level_cleanup_view (void) { board_clear (); goal_view_clear (); clock_stop (CLOCK(app->clock)); } static void atomix_exit (void) { #ifdef DEBUG g_message ("Destroy application"); #endif g_return_if_fail (app != NULL); if (app->state != GAME_STATE_NOT_RUNNING) { log_score (); set_game_not_running_state (); } board_destroy (); if (app->level) g_object_unref (app->level); if (app->lm) g_object_unref (app->lm); if (app->theme) g_object_unref (app->theme); if (app->tm) g_object_unref (app->tm); /* quit application */ bonobo_object_unref (BONOBO_OBJECT (app->ui_component)); gtk_widget_destroy (app->mainwin); gtk_main_quit (); } static gboolean on_key_press_event (GObject *widget, GdkEventKey *event, gpointer user_data) { if ((app->state == GAME_STATE_RUNNING) || (app->state == GAME_STATE_RUNNING_UNMOVED)) { board_handle_key_event (NULL, event, NULL); } return TRUE; } static void game_init () { g_return_if_fail (app != NULL); /* init theme manager */ app->tm = theme_manager_new (); theme_manager_init_themes (app->tm); app->theme = theme_manager_get_theme (app->tm, "default"); g_assert (app->theme != NULL); /* init level manager */ app->lm = level_manager_new (); level_manager_init_levels (app->lm); /* init level statistics */ app->level = NULL; app->level_no = 0; app->score = 0; clock_set_format (CLOCK(app->clock), "%M:%S"); clock_set_seconds (CLOCK(app->clock), 0); /* init the board */ board_init (app->theme, GNOME_CANVAS (app->ca_matrix)); /* init goal */ goal_view_init (app->theme, GNOME_CANVAS (app->ca_goal)); /* update user visible information */ app->state = GAME_STATE_NOT_RUNNING; update_menu_item_state (); update_statistics (); gtk_widget_grab_focus (GTK_WIDGET (app->ca_matrix)); } void game_level_finished (void) { controller_handle_action (GAME_ACTION_FINISHED); } static void calculate_score (void) { gint seconds; seconds = time (NULL) - CLOCK(app->clock)->seconds; if (seconds > 300) return; if (app->score == 0) app->score = 300 - seconds; else app->score = app->score * (2 - (seconds / 300)); } static void log_score (void) { gint position; if (app->score == 0) return; position = gnome_score_log (app->score, NULL, TRUE); gnome_scores_display (_("Atomix"), PACKAGE, NULL, position); } static void view_congratulations (void) { GtkWidget *dlg; dlg = gtk_message_dialog_new (GTK_WINDOW (app->mainwin), GTK_DIALOG_MODAL, GTK_MESSAGE_INFO, GTK_BUTTONS_CLOSE, "%s", _("Congratulations! You have finished all Atomix levels.")); gtk_dialog_run (GTK_DIALOG (dlg)); gtk_widget_destroy (GTK_WIDGET (dlg)); } #if 0 dlg = gtk_message_dialog_new (GTK_WINDOW (app->mainwin), GTK_DIALOG_MODAL, GTK_MESSAGE_ERROR, GTK_BUTTONS_OK, "%s", _("Couldn't find at least one level.")); gtk_dialog_run (GTK_DIALOG (dlg)); gtk_widget_destroy (GTK_WIDGET (dlg)); _("Do you want to finish the game?")); #endif /* =============================================================== UI update functions -------------------------------------------------------------- */ static void update_statistics (void) { gchar *str_buffer; g_return_if_fail (app != NULL); if (app->state == GAME_STATE_NOT_RUNNING) { /* don't show anything */ gtk_label_set_text (GTK_LABEL (app->lb_level), ""); gtk_label_set_text (GTK_LABEL (app->lb_name), ""); gtk_label_set_text (GTK_LABEL (app->lb_formula), ""); gtk_label_set_text (GTK_LABEL (app->lb_score), ""); gtk_widget_hide (GTK_WIDGET (app->clock)); } else { /* set level number */ str_buffer = g_new0 (gchar, 10); g_snprintf (str_buffer, 10, "%i", app->level_no); gtk_label_set_text (GTK_LABEL (app->lb_level), str_buffer); /* set levelname */ gtk_label_set_text (GTK_LABEL (app->lb_name), _(level_get_name (app->level))); /* set the formula of the compound */ gtk_label_set_markup (GTK_LABEL (app->lb_formula), level_get_formula (app->level)); /* set score */ g_snprintf (str_buffer, 10, "%i", app->score); gtk_label_set_text (GTK_LABEL (app->lb_score), str_buffer); /* show clock */ gtk_widget_show (GTK_WIDGET (app->clock)); g_free (str_buffer); } } typedef struct { gchar *cmd; gboolean enabled; } CmdEnable; static const CmdEnable not_running[] = { { "GameNew", TRUE }, { "GameEnd", FALSE }, { "GameSkip", FALSE }, { "GameReset", FALSE }, { "GameUndo", FALSE }, { "GamePause", FALSE }, { "GameContinue", FALSE }, { "EditPreferences", TRUE }, { NULL, FALSE } }; static const CmdEnable running_unmoved[] = { { "GameNew", FALSE }, { "GameEnd", TRUE }, { "GameSkip", TRUE }, { "GameReset", FALSE }, { "GameUndo", FALSE }, { "GamePause", TRUE }, { "GameContinue", FALSE }, { "EditPreferences", TRUE }, { NULL, FALSE } }; static const CmdEnable running[] = { { "GameNew", FALSE }, { "GameEnd", TRUE }, { "GameSkip", TRUE }, { "GameReset", TRUE }, { "GameUndo", TRUE }, { "GamePause", TRUE }, { "GameContinue", FALSE }, { "EditPreferences", TRUE }, { NULL, FALSE } }; static const CmdEnable paused[] = { { "GameNew", FALSE }, { "GameEnd", FALSE }, { "GameSkip", FALSE }, { "GameReset", FALSE }, { "GameUndo", FALSE }, { "GamePause", FALSE }, { "GameContinue", TRUE }, { "EditPreferences", TRUE }, { NULL, FALSE } }; static const CmdEnable *state_sensitivity[] = { not_running, running_unmoved, running, paused }; void update_menu_item_state (void) { gchar *path; gint i; const CmdEnable *cmd_list = state_sensitivity[app->state]; for (i = 0; cmd_list[i].cmd != NULL; i++) { path = g_strconcat ("/commands/", cmd_list[i].cmd, NULL); bonobo_ui_component_set_prop (app->ui_component, path, "sensitive", cmd_list[i].enabled ? "1" : "0", NULL); g_free (path); } } /* =============================================================== GUI creation functions -------------------------------------------------------------- */ static BonoboUIVerb verbs[] = { BONOBO_UI_VERB ("GameNew", verb_GameNew_cb), BONOBO_UI_VERB ("GameEnd", verb_GameEnd_cb), BONOBO_UI_VERB ("GameSkip", verb_GameSkip_cb), BONOBO_UI_VERB ("GameReset", verb_GameReset_cb), BONOBO_UI_VERB ("GameUndo", verb_GameUndo_cb), BONOBO_UI_VERB ("GamePause", verb_GamePause_cb), BONOBO_UI_VERB ("GameContinue", verb_GameContinue_cb), BONOBO_UI_VERB ("GameScores", verb_GameScores_cb), BONOBO_UI_VERB ("GameExit", verb_GameExit_cb), BONOBO_UI_VERB ("EditPreferences", verb_EditPreferences_cb), #if 0 BONOBO_UI_VERB ("HelpManual", verb_HelpManual_cb), #endif BONOBO_UI_VERB ("HelpAbout", verb_HelpAbout_cb), BONOBO_UI_VERB_END }; static GtkWidget *create_canvas_widget (GtkWidget **canvas) { GtkWidget *frame; *canvas = gnome_canvas_new_aa (); frame = gtk_frame_new (NULL); gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_IN); gtk_container_add (GTK_CONTAINER (frame), GTK_WIDGET (*canvas)); return frame; } static void add_statistics_table_entry (GtkWidget *table, gint row, gchar *label_str, gboolean is_clock, GtkWidget **return_widget) { GtkWidget *label; GtkWidget *lb_align; GtkWidget *align; label = gtk_label_new (label_str); lb_align = gtk_alignment_new (1.0, 0.5, 0.0, 0.0); gtk_container_add (GTK_CONTAINER (lb_align), GTK_WIDGET (label)); gtk_table_attach (GTK_TABLE (table), GTK_WIDGET (lb_align), 0, 1, row, row + 1, GTK_FILL, GTK_FILL, 0, 0); if (is_clock) *return_widget = clock_new (); else *return_widget = gtk_label_new ("NO CONTENT"); align = gtk_alignment_new (0.0, 0.5, 0.0, 0.0); gtk_container_add (GTK_CONTAINER (align), GTK_WIDGET (*return_widget)); gtk_table_attach (GTK_TABLE (table), GTK_WIDGET (align), 1, 2, row, row + 1, GTK_FILL, GTK_FILL, 6, 0); } static GtkWidget *create_mainwin_content (AtomixApp *app) { GtkWidget *hbox; GtkWidget *vbox; GtkWidget *pf; GtkWidget *goal; GtkWidget *frame; GtkWidget *table; /* create canvas widgets */ pf = create_canvas_widget (&app->ca_matrix); goal = create_canvas_widget (&app->ca_goal); gtk_widget_set_size_request (GTK_WIDGET (goal), 180, 50); /* add playfield canvas to left side */ hbox = gtk_hbox_new (FALSE, 6); gtk_container_set_border_width (GTK_CONTAINER (hbox), 6); gtk_box_pack_start (GTK_BOX (hbox), GTK_WIDGET (pf), TRUE, TRUE, 0); g_signal_connect (G_OBJECT (app->ca_matrix), "key_press_event", G_CALLBACK (on_key_press_event), app); /* create right window side */ vbox = gtk_vbox_new (FALSE, 6); gtk_box_pack_start (GTK_BOX (hbox), GTK_WIDGET (vbox), FALSE, TRUE, 0); /* create statistics frame */ frame = gtk_frame_new (_("Statistics")); table = gtk_table_new (4, 2, FALSE); gtk_table_set_row_spacings (GTK_TABLE (table), 6); gtk_table_set_col_spacings (GTK_TABLE (table), 6); gtk_container_set_border_width (GTK_CONTAINER (table), 6); add_statistics_table_entry (table, 0, _("Level:"), FALSE, &app->lb_level); add_statistics_table_entry (table, 1, _("Molecule:"), FALSE, &app->lb_name); add_statistics_table_entry (table, 2, _("Formula:"), FALSE, &app->lb_formula); add_statistics_table_entry (table, 3, _("Score:"), FALSE, &app->lb_score); add_statistics_table_entry (table, 4, _("Time:"), TRUE, &app->clock); gtk_container_add (GTK_CONTAINER (frame), GTK_WIDGET (table)); /* add frame and goal canvas to left side */ gtk_box_pack_start (GTK_BOX (vbox), GTK_WIDGET (frame), FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (vbox), GTK_WIDGET (goal), TRUE, TRUE, 0); /* show all */ gtk_widget_show_all (GTK_WIDGET (hbox)); return hbox; } static AtomixApp *create_gui (GnomeProgram *prog) { AtomixApp *app; gchar *ui_file = NULL; GtkWidget *content; app = g_new0 (AtomixApp, 1); app->prog = prog; app->level = NULL; app->mainwin = bonobo_window_new ("atomix", "Atomix"); g_signal_connect (G_OBJECT (app->mainwin), "delete_event", (GCallback) on_app_destroy_event, app); app->ui_container = bonobo_ui_engine_get_ui_container (bonobo_window_get_ui_engine (BONOBO_WINDOW (app->mainwin))); app->ui_component = bonobo_ui_component_new ("atomix"); bonobo_ui_component_set_container (app->ui_component, BONOBO_OBJREF (app->ui_container), NULL); /* find xml menu description */ ui_file = bonobo_ui_util_get_ui_fname (DATADIR, "atomix-ui.xml"); if (ui_file && !g_file_test (ui_file, G_FILE_TEST_EXISTS)) { g_error (_("Couldn't find file: %s"), ui_file); return NULL; } /* set menus */ bonobo_ui_util_set_ui (app->ui_component, "", ui_file, "atomix", NULL); g_free (ui_file); bonobo_ui_component_add_verb_list_with_data (app->ui_component, verbs, app); /* create window contents */ content = create_mainwin_content (app); gtk_window_set_default_icon_from_file (g_build_filename (DATADIR, "pixmaps", "atomix-icon.png", NULL), NULL); gtk_widget_show (GTK_WIDGET (content)); bonobo_window_set_contents (BONOBO_WINDOW (app->mainwin), content); return app; } int main (int argc, char *argv[]) { GnomeProgram *prog; gnome_score_init (PACKAGE); bindtextdomain (GETTEXT_PACKAGE, GNOMELOCALEDIR); bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8"); textdomain (GETTEXT_PACKAGE); prog = gnome_program_init (PACKAGE, VERSION, LIBGNOMEUI_MODULE, argc, argv, NULL); /* make a few initalisations here */ app = create_gui (prog); game_init (); gtk_widget_set_size_request (GTK_WIDGET (app->mainwin), 660, 480); gtk_widget_show (app->mainwin); gtk_main (); return 0; } atomix-2.14.0/src/main.h0000644000175000017500000000323410357257614011720 00000000000000/* Atomix -- a little puzzle game about atoms and molecules. * Copyright (C) 1999 Jens Finke * Copyright (C) 2005 Guilherme de S. Pastore * * 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 2 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, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifndef _ATOMIX_MAIN_H_ #define _ATOMIX_MAIN_H_ #include #include #include "theme-manager.h" #include "level-manager.h" #include "goal.h" typedef enum { GAME_STATE_NOT_RUNNING, GAME_STATE_RUNNING_UNMOVED, GAME_STATE_RUNNING, GAME_STATE_PAUSED } GameState; typedef struct { GnomeProgram *prog; GtkWidget *mainwin; BonoboUIContainer *ui_container; BonoboUIComponent *ui_component; GtkWidget *ca_matrix; GtkWidget *ca_goal; GtkWidget *lb_level; GtkWidget *lb_name; GtkWidget *lb_formula; GtkWidget *lb_score; GtkWidget *clock; LevelManager *lm; ThemeManager *tm; Theme *theme; GameState state; Level *level; Goal *goal; gint level_no; guint score; } AtomixApp; void game_level_finished (void); void update_menu_item_state (void); #endif /* _ATOMIX_MAIN_H_ */ atomix-2.14.0/src/board.c0000644000175000017500000007246210343721350012053 00000000000000/* Atomix -- a little puzzle game about atoms and molecules. * Copyright (C) 1999-2001 Jens Finke * Copyright (C) 2005 Guilherme de S. Pastore * * 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 2 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, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include "board.h" #include #include #include #include "goal.h" #include "undo.h" #include "main.h" #include "playfield.h" #include "tile.h" #include "canvas_helper.h" #define ANIM_TIMEOUT 10 /* time in milliseconds between two atom movements */ typedef struct { gint timeout_id; gint counter; gint dest_row; gint dest_col; double x_step; double y_step; } AnimData; typedef struct { guint row; guint col; gboolean selected; gint arrow_show_timeout; gint mouse_steering; GnomeCanvasItem *sel_item; GnomeCanvasItem *selector; GnomeCanvasGroup *arrows; GnomeCanvasItem *arrow_left; GnomeCanvasItem *arrow_right; GnomeCanvasItem *arrow_top; GnomeCanvasItem *arrow_bottom; } SelectorData; typedef struct { GnomeCanvasGroup *level; GnomeCanvasGroup *obstacles; GnomeCanvasGroup *moveables; GnomeCanvasGroup *floor; GnomeCanvasGroup *shadows; GnomeCanvasItem *logo; } LevelItems; typedef enum { UP, DOWN, LEFT, RIGHT } ItemDirection; /*================================================================= Global variables ---------------------------------------------------------------*/ extern AtomixApp *app; static Theme *board_theme = NULL; static GnomeCanvas *board_canvas = NULL; static PlayField *board_env = NULL; /* the actual playfield */ static PlayField *board_sce = NULL; /* the actual playfield */ static PlayField *board_shadow = NULL; /* the shadow positions */ static Goal *board_goal = NULL; /* the goal of this level */ static AnimData *anim_data; /* holds the date for the atom animation */ static GSList *board_canvas_items = NULL; /* a list of all used canvas items */ static LevelItems *level_items; /* references to the level groups */ static SelectorData *selector_data; /* data about the selector */ /*================================================================= Declaration of internal functions ---------------------------------------------------------------*/ GnomeCanvasItem *create_tile (double x, double y, Tile * tile, GnomeCanvasGroup * group); void board_render (void); static void render_tile (Tile *tile, gint row, gint col); gint item_event (GnomeCanvasItem *item, GdkEvent *event, gpointer data); void move_item (GnomeCanvasItem *item, ItemDirection direc); int move_item_anim (void *data); static void selector_move_to (SelectorData *data, guint row, guint col); static void selector_unselect (SelectorData *data); static void selector_select (SelectorData *data, GnomeCanvasItem *item); static SelectorData *selector_create (void); static void selector_hide (SelectorData *data); static void selector_show (SelectorData *data); static void selector_arrows_hide (SelectorData *data); /*================================================================= Board creation, initialisation and clean up ---------------------------------------------------------------*/ #define BGR_FLOOR_ROWS 15 #define BGR_FLOOR_COLS 15 static void create_background_floor (void) { int row, col; Tile *tile; GQuark quark; int tile_width, tile_height; double x, y; GdkPixbuf *pixbuf = NULL; GnomeCanvasItem *item; int ca_width, ca_height; int width, height; quark = g_quark_from_static_string ("floor"); theme_get_tile_size (board_theme, &tile_width, &tile_height); tile = tile_new (TILE_TYPE_FLOOR); tile_set_base_id (tile, quark); pixbuf = theme_get_tile_image (board_theme, tile); g_object_unref (tile); for (row = 0; row < BGR_FLOOR_ROWS; row++) for (col = 0; col < BGR_FLOOR_COLS; col++) { x = col * tile_width; y = row * tile_height; item = gnome_canvas_item_new (level_items->floor, gnome_canvas_pixbuf_get_type (), "pixbuf", pixbuf, "x", x, "x_in_pixels", TRUE, "y", y, "y_in_pixels", TRUE, "width", (double) gdk_pixbuf_get_width (pixbuf), "height", (double) gdk_pixbuf_get_height (pixbuf), "anchor", GTK_ANCHOR_NW, NULL); } g_object_unref (pixbuf); /* center the whole thing */ ca_width = GTK_WIDGET (board_canvas)->allocation.width; ca_height = GTK_WIDGET (board_canvas)->allocation.height; width = tile_width * BGR_FLOOR_COLS; height = tile_height * BGR_FLOOR_ROWS; if (width > ca_width) { x = (width / 2) - (ca_width / 2); width = ca_width; } else x = 0; if (height > ca_height) { y = (height / 2) - (ca_height / 2); height = ca_height; } else y = 0; gnome_canvas_set_scroll_region (board_canvas, x, y, width + x, height + y); /* set background color */ set_background_color (GTK_WIDGET (board_canvas), theme_get_background_color (board_theme)); } static void create_logo (void) { GdkPixbuf *pixbuf; double x1, y1, x2, y2; pixbuf = gdk_pixbuf_new_from_file (DATADIR "/atomix/atomix-logo.png", NULL); gnome_canvas_item_get_bounds (GNOME_CANVAS_ITEM (level_items->floor), &x1, &y1, &x2, &y2); level_items->logo = gnome_canvas_item_new (level_items->floor, gnome_canvas_pixbuf_get_type (), "pixbuf", pixbuf, "x", (x2 - x1) / 2, "x_in_pixels", TRUE, "y", (y2 - y1) / 2, "y_in_pixels", TRUE, "width", (double) gdk_pixbuf_get_width (pixbuf), "height", (double) gdk_pixbuf_get_height (pixbuf), "anchor", GTK_ANCHOR_CENTER, NULL); gnome_canvas_item_raise_to_top (GNOME_CANVAS_ITEM (level_items->logo)); g_object_unref (pixbuf); } void board_init (Theme *theme, GnomeCanvas *canvas) { g_return_if_fail (IS_THEME (theme)); g_return_if_fail (GNOME_IS_CANVAS (canvas)); /* Animation Data Setup */ anim_data = g_new0 (AnimData, 1); anim_data->timeout_id = -1; anim_data->counter = 0; anim_data->dest_row = 0; anim_data->dest_col = 0; anim_data->x_step = 0.0; anim_data->y_step = 0.0; undo_clear (); /* Canvas setup */ level_items = g_new0 (LevelItems, 1); /* create the canvas groups for the level * (note: the first created group will be the first drawn group) */ level_items->floor = create_group (canvas, NULL); level_items->level = create_group (canvas, NULL); level_items->obstacles = create_group (canvas, level_items->level); level_items->moveables = create_group (canvas, level_items->level); level_items->shadows = create_group (canvas, level_items->level); g_signal_connect (G_OBJECT (canvas), "key_press_event", G_CALLBACK (board_handle_key_event), NULL); /* other initialistions */ board_canvas = canvas; g_object_ref (theme); board_theme = theme; board_env = NULL; board_sce = NULL; board_goal = NULL; create_background_floor (); create_logo (); selector_data = selector_create (); } void board_init_level (PlayField *base_env, PlayField *sce, Goal *goal) { gint row, col; /* init item anim structure */ anim_data->timeout_id = -1; anim_data->counter = 0; anim_data->dest_row = 0; anim_data->dest_col = 0; anim_data->x_step = 0.0; anim_data->y_step = 0.0; /* reset undo of moves */ undo_clear (); /* init board */ board_env = playfield_generate_environment (base_env, board_theme); board_sce = playfield_copy (sce); board_shadow = playfield_generate_shadow (base_env); /* init goal */ board_goal = g_object_ref (goal); row = playfield_get_n_rows (board_env) / 2; col = playfield_get_n_cols (board_env) / 2; selector_move_to (selector_data, row, col); selector_unselect (selector_data); /* render level */ board_render (); board_show (); } void board_destroy () { if (board_env) g_object_unref (board_env); if (board_sce) g_object_unref (board_sce); if (anim_data) g_free (anim_data); undo_clear (); if (level_items) { if (level_items->level) gtk_object_destroy (GTK_OBJECT (level_items->level)); g_free (level_items); } if (selector_data) g_free (selector_data); if (board_theme) g_object_unref (board_theme); if (board_goal) g_object_unref (board_goal); } /*================================================================= Board functions ---------------------------------------------------------------*/ void board_render () { gint row, col; gint tile_width, tile_height; Tile *tile; double x_offset, y_offset; double dst[6]; g_return_if_fail (board_theme != NULL); /* render one row more than the actual environment because of the shadow, which is one row/col larger */ for (row = 0; row <= playfield_get_n_rows (board_env); row++) { for (col = 0; col <= playfield_get_n_cols (board_env); col++) { if (row < playfield_get_n_rows (board_env) && col < playfield_get_n_cols (board_env)) { tile = playfield_get_tile (board_sce, row, col); if (tile != NULL) { render_tile (tile, row, col); g_object_unref (tile); } tile = playfield_get_tile (board_env, row, col); if (tile != NULL) { render_tile (tile, row, col); if (tile_get_tile_type (tile) == TILE_TYPE_WALL) playfield_set_tile (board_sce, row, col, tile); g_object_unref (tile); } } tile = playfield_get_tile (board_shadow, row, col); if (tile != NULL) { render_tile (tile, row, col); g_object_unref (tile); } } } theme_get_tile_size (board_theme, &tile_width, &tile_height); x_offset = tile_width * (BGR_FLOOR_COLS / 2 - playfield_get_n_cols (board_env) / 2); y_offset = tile_height * (BGR_FLOOR_ROWS / 2 - playfield_get_n_rows (board_env) / 2); art_affine_translate (dst, x_offset, y_offset); gnome_canvas_item_affine_absolute (GNOME_CANVAS_ITEM (level_items->level), dst); } static void render_tile (Tile *tile, gint row, gint col) { GnomeCanvasItem *item; GnomeCanvasGroup *group; TileType type; gdouble x, y; type = tile_get_tile_type (tile); switch (type) { case TILE_TYPE_ATOM: group = level_items->moveables; break; case TILE_TYPE_WALL: group = level_items->obstacles; break; case TILE_TYPE_FLOOR: group = NULL; /* level_items->floor; */ break; case TILE_TYPE_SHADOW: group = level_items->shadows; break; case TILE_TYPE_UNKNOWN: default: group = NULL; } if (group != NULL) { convert_to_canvas (board_theme, row, col, &x, &y); item = create_tile (x, y, tile, group); } } gboolean board_undo_move () { UndoMove *move; gdouble x_src, y_src, x_dest, y_dest; gint animstep; g_return_val_if_fail (board_theme != NULL, FALSE); if (anim_data->timeout_id != -1) return FALSE; move = undo_pop_move (); if (move == NULL) return FALSE; playfield_swap_tiles (board_sce, move->src_row, move->src_col, move->dest_row, move->dest_col); if (selector_data->selected) { selector_hide (selector_data); selector_move_to (selector_data, move->src_row, move->src_col); } convert_to_canvas (board_theme, move->src_row, move->src_col, &x_src, &y_src); convert_to_canvas (board_theme, move->dest_row, move->dest_col, &x_dest, &y_dest); animstep = theme_get_animstep (board_theme); if (move->src_col == move->dest_col) { anim_data->counter = (gint) (fabs (y_dest - y_src) / animstep); anim_data->x_step = 0; anim_data->y_step = animstep; if (move->src_row < move->dest_row) { anim_data->y_step = -(anim_data->y_step); } } else { anim_data->counter = (gint) (fabs (x_dest - x_src) / animstep); anim_data->x_step = animstep; anim_data->y_step = 0; if (move->src_col < move->dest_col) { anim_data->x_step = -(anim_data->x_step); } } anim_data->dest_row = move->src_row; anim_data->dest_col = move->src_col; selector_data->sel_item = move->item; anim_data->timeout_id = gtk_timeout_add (ANIM_TIMEOUT, move_item_anim, anim_data); g_free (move); return TRUE; } void board_clear () { g_slist_foreach (board_canvas_items, (GFunc) gtk_object_destroy, NULL); g_slist_free (board_canvas_items); board_canvas_items = NULL; /* clear board */ if (board_env) { g_object_unref (board_env); board_env = NULL; } if (board_sce) { g_object_unref (board_sce); board_sce = NULL; } if (board_goal) { g_object_unref (board_goal); board_goal = NULL; } if (board_shadow) { g_object_unref (board_shadow); board_shadow = NULL; } selector_hide (selector_data); } void board_print () { g_print ("Board:\n"); playfield_print (board_env); } void board_hide (void) { gnome_canvas_item_hide (GNOME_CANVAS_ITEM (level_items->moveables)); gnome_canvas_item_hide (GNOME_CANVAS_ITEM (selector_data->arrows)); } void board_show (void) { gnome_canvas_item_show (GNOME_CANVAS_ITEM (level_items->moveables)); if (undo_exists()) gnome_canvas_item_show (GNOME_CANVAS_ITEM (selector_data->arrows)); } void board_show_logo (gboolean visible) { if (visible) gnome_canvas_item_show (GNOME_CANVAS_ITEM (level_items->logo)); else gnome_canvas_item_hide (GNOME_CANVAS_ITEM (level_items->logo)); } /*================================================================= Board atom handling functions ---------------------------------------------------------------*/ static GnomeCanvasItem *get_item_by_row_col (gint row, gint col) { gint width, height; ArtPoint item_point; ArtPoint world_point; double affine[6]; convert_to_canvas (board_theme, row, col, &item_point.x, &item_point.y); theme_get_tile_size (board_theme, &width, &height); item_point.x = item_point.x + (width / 2); item_point.y = item_point.y + (height / 2); gnome_canvas_item_i2w_affine (GNOME_CANVAS_ITEM (level_items->level), affine); art_affine_point (&world_point, &item_point, affine); return gnome_canvas_get_item_at (board_canvas, world_point.x, world_point.y); } static void get_row_col_by_item (GnomeCanvasItem *item, guint *row, guint *col) { gdouble x1, y1, x2, y2; g_return_if_fail (GNOME_IS_CANVAS_ITEM (item)); gnome_canvas_item_get_bounds (item, &x1, &y1, &x2, &y2); convert_to_playfield (board_theme, x1, y1, row, col); } static gboolean board_handle_arrow_event (GnomeCanvasItem *item, GdkEvent *event, gpointer direction) { /* is currently an object moved? */ if (anim_data->timeout_id != -1) return FALSE; if (event->type == GDK_BUTTON_PRESS && selector_data->selected) { selector_data->mouse_steering = TRUE; move_item (selector_data->sel_item, GPOINTER_TO_INT (direction)); return TRUE; } return FALSE; } static gboolean board_handle_item_event (GnomeCanvasItem *item, GdkEvent *event, gpointer data) { gboolean just_unselect; guint new_row, new_col; /* is currently an object moved? */ if (anim_data->timeout_id != -1) return FALSE; if (event->type == GDK_BUTTON_PRESS) { selector_data->mouse_steering = TRUE; just_unselect = (item == selector_data->sel_item); if (selector_data->selected) { /* unselect item, show selector image */ selector_unselect (selector_data); } if (!just_unselect) { get_row_col_by_item (item, &new_row, &new_col); selector_move_to (selector_data, new_row, new_col); selector_select (selector_data, item); } return TRUE; } return FALSE; } void board_handle_key_event (GObject *canvas, GdkEventKey *event, gpointer data) { GnomeCanvasItem *item; gint new_row, new_col; Tile *tile; g_return_if_fail (selector_data != NULL); new_row = selector_data->row; new_col = selector_data->col; /* is currently an object moved? */ if (anim_data->timeout_id != -1) return; switch (event->keyval) { case GDK_Return: selector_data->mouse_steering = FALSE; if (selector_data->selected) { /* unselect item, show selector image */ selector_unselect (selector_data); } else { item = get_item_by_row_col (selector_data->row, selector_data->col); if (item == NULL) break; if (g_object_get_data (G_OBJECT (item), "tile") == NULL) break; tile = TILE (g_object_get_data (G_OBJECT (item), "tile")); if (tile_get_tile_type (tile) == TILE_TYPE_ATOM) selector_select (selector_data, item); } break; case GDK_Left: selector_data->mouse_steering = FALSE; if (!selector_data->selected) { new_col--; if (new_col >= 0) { selector_show (selector_data); selector_move_to (selector_data, new_row, new_col); } } else { move_item (selector_data->sel_item, LEFT); /* selector will be moved in this function */ } break; case GDK_Right: selector_data->mouse_steering = FALSE; if (!selector_data->selected) { new_col++; if (new_col < playfield_get_n_cols (board_env)) { selector_show (selector_data); selector_move_to (selector_data, new_row, new_col); } } else { move_item (selector_data->sel_item, RIGHT); /* selector will be moved in this function */ } break; case GDK_Up: selector_data->mouse_steering = FALSE; if (!selector_data->selected) { new_row--; if (new_row >= 0) { selector_show (selector_data); selector_move_to (selector_data, new_row, new_col); } } else { move_item (selector_data->sel_item, UP); /* selector will be moved in this function */ } break; case GDK_Down: selector_data->mouse_steering = FALSE; if (!selector_data->selected) { new_row++; if (new_row < playfield_get_n_rows (board_env)) { selector_show (selector_data); selector_move_to (selector_data, new_row, new_col); } } else { move_item (selector_data->sel_item, DOWN); /* selector will be moved in this function */ } break; default: break; } } void move_item (GnomeCanvasItem *item, ItemDirection direc) { gdouble x1, y1, x2, y2; gdouble new_x1, new_y1; guint src_row, src_col, dest_row, dest_col, tmp_row, tmp_col; gint animstep; Tile *tile; gint tw, th; gnome_canvas_item_get_bounds (item, &x1, &y1, &x2, &y2); theme_get_tile_size (board_theme, &tw, &th); x1 = x1 - (((gint) x1) % tw); /* I don't have a clue why we must do this here. */ convert_to_playfield (board_theme, x1, y1, &src_row, &src_col); /* find destination row/col */ tmp_row = dest_row = src_row; tmp_col = dest_col = src_col; while (TRUE) { switch (direc) { case UP: tmp_row = tmp_row - 1; break; case DOWN: tmp_row = tmp_row + 1; break; case LEFT: tmp_col = tmp_col - 1; break; case RIGHT: tmp_col = tmp_col + 1; break; } if (tmp_row < 0 || tmp_row >= playfield_get_n_rows (board_sce) || tmp_col < 0 || tmp_col >= playfield_get_n_cols (board_sce)) break; tile = playfield_get_tile (board_sce, tmp_row, tmp_col); if (tile && (tile_get_tile_type (tile) == TILE_TYPE_ATOM || tile_get_tile_type (tile) == TILE_TYPE_WALL)) { g_object_unref (tile); break; } dest_row = tmp_row; dest_col = tmp_col; if (tile) g_object_unref (tile); } /* move the item, if the new position is different */ if (src_row != dest_row || src_col != dest_col) { if (!undo_exists()) { app->state = GAME_STATE_RUNNING; update_menu_item_state (); } undo_push_move (item, src_row, src_col, dest_row, dest_col); convert_to_canvas (board_theme, dest_row, dest_col, &new_x1, &new_y1); playfield_swap_tiles (board_sce, src_row, src_col, dest_row, dest_col); selector_hide (selector_data); selector_move_to (selector_data, dest_row, dest_col); animstep = theme_get_animstep (board_theme); if (direc == UP || direc == DOWN) { anim_data->counter = (gint) (fabs (new_y1 - y1) / animstep); anim_data->x_step = 0; anim_data->y_step = (direc == DOWN) ? animstep : -animstep; } else { anim_data->counter = (gint) (fabs (new_x1 - x1) / animstep); anim_data->x_step = (direc == RIGHT) ? animstep : -animstep; anim_data->y_step = 0; } anim_data->dest_row = dest_row; anim_data->dest_col = dest_col; anim_data->timeout_id = gtk_timeout_add (ANIM_TIMEOUT, move_item_anim, anim_data); } } int move_item_anim (void *data) { AnimData *anim_data = (AnimData *) data; if (anim_data->counter > 0) { gnome_canvas_item_move (selector_data->sel_item, anim_data->x_step, anim_data->y_step); anim_data->counter--; return TRUE; } else { anim_data->timeout_id = -1; if (goal_reached (board_goal, board_sce, anim_data->dest_row, anim_data->dest_col)) { game_level_finished (); } else { if (selector_data->selected) selector_select (selector_data, selector_data->sel_item); } return FALSE; } } /*================================================================= Selector helper functions ---------------------------------------------------------------*/ static void selector_move_to (SelectorData *data, guint row, guint col) { ArtPoint dest; ArtPoint dest_world; gint tile_width, tile_height; double affine[6]; double translate[6]; g_return_if_fail (data != NULL); if (data->arrow_show_timeout > -1) gtk_timeout_remove (data->arrow_show_timeout); data->arrow_show_timeout = -1; theme_get_tile_size (board_theme, &tile_width, &tile_height); convert_to_canvas (board_theme, row, col, &dest.x, &dest.y); art_affine_point (&dest_world, &dest, affine); art_affine_translate (translate, dest.x, dest.y); gnome_canvas_item_affine_absolute (data->selector, translate); art_affine_translate (translate, dest.x - tile_width, dest.y - tile_height); gnome_canvas_item_affine_absolute (GNOME_CANVAS_ITEM (data->arrows), translate); data->row = row; data->col = col; } static void selector_unselect (SelectorData *data) { g_return_if_fail (data != NULL); data->selected = FALSE; data->sel_item = NULL; if (!data->mouse_steering) { gnome_canvas_item_show (data->selector); } selector_arrows_hide (data); } static void selector_arrows_hide (SelectorData *data) { if (data->arrow_show_timeout > -1) gtk_timeout_remove (data->arrow_show_timeout); data->arrow_show_timeout = -1; gnome_canvas_item_hide (GNOME_CANVAS_ITEM (data->arrows)); } static void selector_hide (SelectorData *data) { gnome_canvas_item_hide (data->selector); selector_arrows_hide (data); } static void selector_show (SelectorData *data) { gnome_canvas_item_show (data->selector); } static gboolean show_arrow_group (SelectorData *data) { gnome_canvas_item_show (GNOME_CANVAS_ITEM (data->arrows)); data->arrow_show_timeout = -1; return FALSE; } static void selector_arrows_show (SelectorData *data) { gint r, c; Tile *tile; if (board_sce == NULL) { gnome_canvas_item_hide (GNOME_CANVAS_ITEM (data->arrows)); return; } r = data->row - 1; c = data->col; if (r >= 0) { tile = playfield_get_tile (board_sce, r, c); if (tile == NULL) gnome_canvas_item_show (data->arrow_top); else { gnome_canvas_item_hide (data->arrow_top); g_object_unref (tile); } } r = data->row; c = data->col + 1; if (c < playfield_get_n_cols (board_sce)) { tile = playfield_get_tile (board_sce, r, c); if (tile == NULL) gnome_canvas_item_show (data->arrow_right); else { gnome_canvas_item_hide (data->arrow_right); g_object_unref (tile); } } r = data->row + 1; c = data->col; if (r < playfield_get_n_rows (board_sce)) { tile = playfield_get_tile (board_sce, r, c); if (tile == NULL) gnome_canvas_item_show (data->arrow_bottom); else { gnome_canvas_item_hide (data->arrow_bottom); g_object_unref (tile); } } r = data->row; c = data->col - 1; if (c >= 0) { tile = playfield_get_tile (board_sce, r, c); if (tile == NULL) gnome_canvas_item_show (data->arrow_left); else { gnome_canvas_item_hide (data->arrow_left); g_object_unref (tile); } } if (data->mouse_steering) { show_arrow_group (data); } else { if (data->arrow_show_timeout > -1) gtk_timeout_remove (data->arrow_show_timeout); data->arrow_show_timeout = gtk_timeout_add (800, (GtkFunction) show_arrow_group, data); } } static void selector_select (SelectorData *data, GnomeCanvasItem *item) { g_return_if_fail (data != NULL); data->selected = TRUE; data->sel_item = item; gnome_canvas_item_hide (data->selector); selector_arrows_show (data); } static SelectorData *selector_create (void) { SelectorData *data; GdkPixbuf *pixbuf; GdkPixbuf *sel_arrows[4]; gint tile_width, tile_height; data = g_new0 (SelectorData, 1); pixbuf = theme_get_selector_image (board_theme); theme_get_selector_arrow_images (board_theme, &sel_arrows[0]); theme_get_tile_size (board_theme, &tile_width, &tile_height); g_return_val_if_fail (pixbuf != NULL, NULL); data->row = 0; data->col = 0; data->sel_item = NULL; data->selected = FALSE; data->arrow_show_timeout = -1; data->mouse_steering = FALSE; data->selector = gnome_canvas_item_new (level_items->level, gnome_canvas_pixbuf_get_type (), "pixbuf", pixbuf, "x", 0.0, "x_in_pixels", TRUE, "y", 0.0, "y_in_pixels", TRUE, "width", (double) gdk_pixbuf_get_width (pixbuf), "height", (double) gdk_pixbuf_get_height (pixbuf), "anchor", GTK_ANCHOR_NW, NULL); data->arrows = GNOME_CANVAS_GROUP (gnome_canvas_item_new (level_items->level, gnome_canvas_group_get_type (), "x", (double) -tile_width, "y", (double) -tile_height, NULL)); data->arrow_top = gnome_canvas_item_new (GNOME_CANVAS_GROUP (data->arrows), gnome_canvas_pixbuf_get_type (), "pixbuf", sel_arrows[0], "x", (double) 1 * tile_width, "x_in_pixels", TRUE, "y", (double) 0 * tile_height, "y_in_pixels", TRUE, "anchor", GTK_ANCHOR_NW, NULL); g_signal_connect (G_OBJECT (data->arrow_top), "event", G_CALLBACK (board_handle_arrow_event), GINT_TO_POINTER (UP)); data->arrow_right = gnome_canvas_item_new (GNOME_CANVAS_GROUP (data->arrows), gnome_canvas_pixbuf_get_type (), "pixbuf", sel_arrows[1], "x", (double) 2 * tile_width, "x_in_pixels", TRUE, "y", (double) 1 * tile_height, "y_in_pixels", TRUE, "anchor", GTK_ANCHOR_NW, NULL); g_signal_connect (G_OBJECT (data->arrow_right), "event", G_CALLBACK (board_handle_arrow_event), GINT_TO_POINTER (RIGHT)); data->arrow_bottom = gnome_canvas_item_new (GNOME_CANVAS_GROUP (data->arrows), gnome_canvas_pixbuf_get_type (), "pixbuf", sel_arrows[2], "x", (double) 1 * tile_width, "x_in_pixels", TRUE, "y", (double) 2 * tile_height, "y_in_pixels", TRUE, "anchor", GTK_ANCHOR_NW, NULL); g_signal_connect (G_OBJECT (data->arrow_bottom), "event", G_CALLBACK (board_handle_arrow_event), GINT_TO_POINTER (DOWN)); data->arrow_left = gnome_canvas_item_new (GNOME_CANVAS_GROUP (data->arrows), gnome_canvas_pixbuf_get_type (), "pixbuf", sel_arrows[3], "x", (double) 0 * tile_width, "x_in_pixels", TRUE, "y", (double) 1 * tile_height, "y_in_pixels", TRUE, "anchor", GTK_ANCHOR_NW, NULL); g_signal_connect (G_OBJECT (data->arrow_left), "event", G_CALLBACK (board_handle_arrow_event), GINT_TO_POINTER (LEFT)); gnome_canvas_item_hide (GNOME_CANVAS_ITEM (data->selector)); gnome_canvas_item_hide (GNOME_CANVAS_ITEM (data->arrows)); return data; } /*================================================================= Internal creation functions ---------------------------------------------------------------*/ GnomeCanvasItem *create_tile (double x, double y, Tile *tile, GnomeCanvasGroup *group) { GdkPixbuf *pixbuf = NULL; GnomeCanvasItem *item = NULL; pixbuf = theme_get_tile_image (board_theme, tile); item = gnome_canvas_item_new (group, gnome_canvas_pixbuf_get_type (), "pixbuf", pixbuf, "x", x, "x_in_pixels", TRUE, "y", y, "y_in_pixels", TRUE, "width", (double) gdk_pixbuf_get_width (pixbuf), "height", (double) gdk_pixbuf_get_height (pixbuf), "anchor", GTK_ANCHOR_NW, NULL); g_object_set_data (G_OBJECT (item), "tile", tile); if (tile_get_tile_type (tile) == TILE_TYPE_ATOM) { g_signal_connect (G_OBJECT (item), "event", G_CALLBACK (board_handle_item_event), NULL); } board_canvas_items = g_slist_prepend (board_canvas_items, item); return GNOME_CANVAS_ITEM (item); } atomix-2.14.0/src/board.h0000644000175000017500000000316010336223355012051 00000000000000/* Atomix -- a little puzzle game about atoms and molecules. * Copyright (C) 1999 Jens Finke * Copyright (C) 2005 Guilherme de S. Pastore * * 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 2 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, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifndef _ATOMIX_BOARD_H_ #define _ATOMIX_BOARD_H_ #include "theme.h" #include "playfield.h" #include "goal.h" enum { BOARD_MSG_NONE, BOARD_MSG_GAME_PAUSED, BOARD_MSG_NEW_GAME, BOARD_MSG_GAME_OVER }; void board_init (Theme * theme, GnomeCanvas * canvas); void board_init_level (PlayField * env, PlayField * sce, Goal * goal); void board_destroy (void); void board_clear (void); void board_print (void); void board_hide (void); void board_show (void); void board_show_normal_cursor (void); gboolean board_undo_move (void); void board_view_message (gint msg_id); void board_hide_message (gint msg_id); void board_show_logo (gboolean visible); void board_handle_key_event (GObject * canvas, GdkEventKey * event, gpointer data); #endif /* _ATOMIX_BOARD_H_ */ atomix-2.14.0/src/undo.c0000644000175000017500000000366310343721350011726 00000000000000/* Atomix -- a little puzzle game about atoms and molecules. * Copyright (C) 1999-2001 Jens Finke * Copyright (C) 2005 Guilherme de S. Pastore * * 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 2 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, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include "main.h" #include "undo.h" extern AtomixApp *app; static GSList *undo_stack = NULL; gboolean undo_exists (void) { return ((undo_stack == NULL) ? FALSE : TRUE); } static void delete_move (UndoMove *move, gpointer data) { g_free (move); } void undo_clear (void) { if (undo_stack == NULL) return; g_slist_foreach (undo_stack, (GFunc) delete_move, NULL); g_slist_free (undo_stack); undo_stack = NULL; } void undo_push_move (GnomeCanvasItem *item, gint src_row, gint src_col, gint dest_row, gint dest_col) { UndoMove *move = g_new0 (UndoMove, 1); move->item = item; move->src_row = src_row; move->src_col = src_col; move->dest_row = dest_row; move->dest_col = dest_col; undo_stack = g_slist_prepend (undo_stack, move); } UndoMove *undo_pop_move (void) { UndoMove *move; if (undo_stack == NULL) return NULL; move = (UndoMove *) undo_stack->data; undo_stack = g_slist_delete_link (undo_stack, undo_stack); if (undo_stack == NULL) { app->state = GAME_STATE_RUNNING_UNMOVED; update_menu_item_state (); } return move; } atomix-2.14.0/src/undo.h0000644000175000017500000000241010336223355011724 00000000000000/* Atomix -- a little puzzle game about atoms and molecules. * Copyright (C) 1999 Jens Finke * Copyright (C) 2005 Guilherme de S. Pastore * * 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 2 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, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifndef _ATOMIX_UNDO_H_ #define _ATOMIX_UNDO_H_ #include typedef struct { GnomeCanvasItem *item; gint src_row; gint src_col; gint dest_row; gint dest_col; } UndoMove; gboolean undo_exists (void); void undo_push_move (GnomeCanvasItem * item, gint src_row, gint src_col, gint dest_row, gint dest_col); UndoMove *undo_pop_move (void); void undo_clear (void); #endif /* _ATOMIX_UNDO_H_ */ atomix-2.14.0/src/goal.c0000644000175000017500000001577110336223355011712 00000000000000/* Atomix -- a little puzzle game about atoms and molecules. * Copyright (C) 1999-2001 Jens Finke * Copyright (C) 2005 Guilherme de S. Pastore * * 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 2 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, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include #include #include "main.h" #include "theme.h" #include "goal.h" #include "canvas_helper.h" static GObjectClass *parent_class = NULL; static void goal_class_init (GObjectClass * class); static void goal_init (Goal * goal); static void goal_finalize (GObject * object); struct _GoalPrivate { PlayField *pf; GSList *index; }; void goal_print_offset (gpointer ptr, gpointer data); GnomeCanvasItem *create_small_item (GnomeCanvasGroup *group, gdouble x, gdouble y, Tile *tile); static gboolean compare_playfield_with_goal (Goal *goal, PlayField *pf, guint start_row, guint start_col); typedef struct { Tile *tile; GSList *position; } TileData; typedef struct { gint horiz; gint vert; } PositionOffset; GType goal_get_type (void) { static GType object_type = 0; if (!object_type) { static const GTypeInfo object_info = { sizeof (GoalClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) goal_class_init, NULL, /* clas_finalize */ NULL, /* class_data */ sizeof (Goal), 0, /* n_preallocs */ (GInstanceInitFunc) goal_init, }; object_type = g_type_register_static (G_TYPE_OBJECT, "Goal", &object_info, 0); } return object_type; } static void goal_class_init (GObjectClass *class) { parent_class = g_type_class_ref (G_TYPE_OBJECT); class->finalize = goal_finalize; } static void goal_init (Goal *goal) { GoalPrivate *priv; priv = g_new0 (GoalPrivate, 1); priv->pf = NULL; priv->index = NULL; goal->priv = priv; } static void goal_finalize (GObject *object) { GSList *td_it; GSList *pos_it; TileData *td; Goal *goal = GOAL (object); #ifdef DEBUG g_message ("Finalize Goal"); #endif if (goal->priv->pf) g_object_unref (goal->priv->pf); for (td_it = goal->priv->index; td_it != NULL; td_it = td_it->next) { td = (TileData *) td_it->data; g_object_unref (td->tile); for (pos_it = td->position; pos_it != NULL; pos_it = pos_it->next) g_free (pos_it->data); g_slist_free (td->position); } g_slist_free (goal->priv->index); g_free (goal->priv); goal->priv = NULL; } static int find_tile (gconstpointer p1, gconstpointer p2) { TileData *td1; TileData *td2; td1 = (TileData *) p1; td2 = (TileData *) p2; g_return_val_if_fail (IS_TILE (td1->tile), 1); g_return_val_if_fail (IS_TILE (td2->tile), 1); if (tile_is_equal (td1->tile, td2->tile)) return 0; else return 1; } Goal *goal_new (PlayField *pf) { Goal *goal; gint row, col; Tile *tile; goal = GOAL (g_object_new (GOAL_TYPE, NULL)); goal->priv->pf = g_object_ref (pf); /* initialise index */ goal->priv->index = NULL; for (row = 0; row < playfield_get_n_rows (pf); row++) { for (col = 0; col < playfield_get_n_cols (pf); col++) { tile = playfield_get_tile (pf, row, col); if (tile && tile_get_tile_type (tile) == TILE_TYPE_ATOM) { TileData pattern; TileData *td; PositionOffset *po; GSList *result = NULL; po = g_new0 (PositionOffset, 1); po->horiz = col; po->vert = row; pattern.tile = tile; pattern.position = NULL; result = g_slist_find_custom (goal->priv->index, &pattern, (GCompareFunc) find_tile); if (result == NULL) { td = g_new0 (TileData, 1); td->tile = g_object_ref (tile); td->position = NULL; goal->priv->index = g_slist_append (goal->priv->index, td); } else { td = (TileData *) result->data; } td->position = g_slist_append (td->position, po); } if (tile) g_object_unref (tile); } } return goal; } PlayField *goal_get_playfield (Goal *goal) { g_return_val_if_fail (IS_GOAL (goal), NULL); g_object_ref (goal->priv->pf); return goal->priv->pf; } gboolean goal_reached (Goal *goal, PlayField *pf, guint row_anchor, guint col_anchor) { GSList *result; GSList *it; gboolean comp_res = FALSE; Tile *tile; TileData *td; TileData pattern; PositionOffset *po; gint start_row; gint start_col; g_return_val_if_fail (IS_GOAL (goal), FALSE); g_return_val_if_fail (goal->priv->index != NULL, FALSE); g_return_val_if_fail (IS_PLAYFIELD (goal->priv->pf), FALSE); g_return_val_if_fail (IS_PLAYFIELD (pf), FALSE); tile = playfield_get_tile (pf, row_anchor, col_anchor); if (tile == NULL) return FALSE; pattern.tile = tile; pattern.position = NULL; result = g_slist_find_custom (goal->priv->index, &pattern, (GCompareFunc) find_tile); if (result == NULL) return FALSE; td = (TileData *) result->data; for (it = td->position; it != NULL && !comp_res; it = it->next) { po = (PositionOffset *) it->data; start_row = row_anchor - po->vert; start_col = col_anchor - po->horiz; if (start_row >= 0 && start_row < playfield_get_n_rows (pf) && start_col >= 0 && start_col < playfield_get_n_cols (pf)) { comp_res = compare_playfield_with_goal (goal, pf, start_row, start_col); } } return comp_res; } static gboolean compare_playfield_with_goal (Goal *goal, PlayField *pf, guint start_row, guint start_col) { Tile *pf_tile; Tile *goal_tile; gint pf_row; gint pf_col; gint goal_row; gint goal_col; gint end_row; gint end_col; gboolean result; end_row = MIN (start_row + playfield_get_n_rows (goal->priv->pf), playfield_get_n_rows (pf)); end_col = MIN (start_col + playfield_get_n_cols (goal->priv->pf), playfield_get_n_cols (pf)); result = TRUE; for (pf_row = start_row, goal_row = 0; pf_row < end_row && result; pf_row++, goal_row++) { for (pf_col = start_col, goal_col = 0; pf_col < end_col && result; pf_col++, goal_col++) { goal_tile = playfield_get_tile (goal->priv->pf, goal_row, goal_col); pf_tile = playfield_get_tile (pf, pf_row, pf_col); if (goal_tile) { if (tile_get_tile_type (goal_tile) == TILE_TYPE_ATOM) { if (!pf_tile) result = FALSE; else if (!tile_is_equal (goal_tile, pf_tile)) result = FALSE; } g_object_unref (goal_tile); } if (pf_tile) g_object_unref (pf_tile); } } return result; } atomix-2.14.0/src/goal.h0000644000175000017500000000343110336223355011705 00000000000000/* Atomix -- a little puzzle game about atoms and molecules. * Copyright (C) 1999 Jens Finke * Copyright (C) 2005 Guilherme de S. Pastore * * 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 2 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, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifndef _ATOMIX_GOAL_H_ #define _ATOMIX_GOAL_H_ #include #include "playfield.h" #define GOAL_TYPE (goal_get_type ()) #define GOAL(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GOAL_TYPE, Goal)) #define GOAL_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), GOAL_TYPE, GoalClass)) #define IS_GOAL(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GOAL_TYPE)) #define IS_GOAL_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), GOAL_TYPE)) #define GOAL_GET_CLASS(o)(G_TYPE_INSTANCE_GET_CLASS ((o), GOAL_TYPE, GoalClass)) typedef struct _GoalPrivate GoalPrivate; typedef struct { GObject parent; GoalPrivate *priv; } Goal; typedef struct { GObjectClass parent_class; } GoalClass; GType goal_get_type (void); Goal *goal_new (PlayField * pf); PlayField *goal_get_playfield (Goal * goal); gboolean goal_reached (Goal * goal, PlayField * pf, guint row_anchor, guint col_anchor); void goal_print (Goal * goal); #endif /* _ATOMIX_GOAL_H_ */ atomix-2.14.0/src/goal-view.c0000644000175000017500000000766310336223355012663 00000000000000/* Atomix -- a little puzzle game about atoms and molecules. * Copyright (C) 2001 Jens Finke * Copyright (C) 2005 Guilherme de S. Pastore * * 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 2 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, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include "goal-view.h" #include "canvas_helper.h" static GnomeCanvas *goal_canvas; static Theme *goal_theme; static GnomeCanvasGroup *item_group; #define SCALE_FACTOR 0.7 static GnomeCanvasItem *create_small_item (GnomeCanvasGroup *group, gdouble x, gdouble y, Tile *tile); static void render_view (Goal *goal); void goal_view_init (Theme *theme, GnomeCanvas *canvas) { g_return_if_fail (IS_THEME (theme)); g_return_if_fail (GNOME_IS_CANVAS (canvas)); set_background_color (GTK_WIDGET (canvas), theme_get_background_color (theme)); goal_canvas = canvas; goal_theme = theme; } void goal_view_render (Goal *goal) { goal_view_clear (); if (goal != NULL) render_view (goal); } static void render_view (Goal *goal) { GnomeCanvasItem *item; PlayField *pf; gint row, col; gdouble x; gdouble y; Tile *tile; TileType type; gint tile_width, tile_height; gint width, height; g_return_if_fail (IS_GOAL (goal)); g_return_if_fail (GNOME_IS_CANVAS (goal_canvas)); g_return_if_fail (IS_THEME (goal_theme)); if (item_group == NULL) item_group = create_group (goal_canvas, NULL); theme_get_tile_size (goal_theme, &tile_width, &tile_height); pf = goal_get_playfield (goal); for (row = 0; row < playfield_get_n_rows (pf); row++) { for (col = 0; col < playfield_get_n_cols (pf); col++) { tile = playfield_get_tile (pf, row, col); if (!tile) continue; type = tile_get_tile_type (tile); switch (type) { case TILE_TYPE_ATOM: x = col * tile_width * SCALE_FACTOR; y = row * tile_height * SCALE_FACTOR; item = create_small_item (item_group, x, y, tile); break; case TILE_TYPE_WALL: case TILE_TYPE_UNKNOWN: default: break; } g_object_unref (tile); } } set_background_color (GTK_WIDGET (goal_canvas), theme_get_background_color (goal_theme)); width = tile_width * playfield_get_n_cols (pf) * SCALE_FACTOR; height = tile_height * playfield_get_n_rows (pf) * SCALE_FACTOR; gnome_canvas_set_scroll_region (goal_canvas, 0, 0, width, height); g_object_unref (pf); } void goal_view_clear () { if (item_group) gtk_object_destroy (GTK_OBJECT (item_group)); item_group = NULL; } static GnomeCanvasItem *create_small_item (GnomeCanvasGroup *group, gdouble x, gdouble y, Tile *tile) { GdkPixbuf *pixbuf = NULL; GdkPixbuf *small_pb = NULL; GnomeCanvasItem *item = NULL; g_return_val_if_fail (IS_TILE (tile), NULL); pixbuf = theme_get_tile_image (goal_theme, tile); small_pb = gdk_pixbuf_scale_simple (pixbuf, gdk_pixbuf_get_width (pixbuf) * SCALE_FACTOR, gdk_pixbuf_get_height (pixbuf) * SCALE_FACTOR, GDK_INTERP_BILINEAR); item = gnome_canvas_item_new (group, gnome_canvas_pixbuf_get_type (), "pixbuf", small_pb, "x", x, "x_in_pixels", TRUE, "y", y, "y_in_pixels", TRUE, "width", (gdouble) (gdk_pixbuf_get_width (small_pb)), "height", (gdouble) (gdk_pixbuf_get_height (small_pb)), "anchor", GTK_ANCHOR_NW, NULL); g_object_unref (pixbuf); return GNOME_CANVAS_ITEM (item); } atomix-2.14.0/src/goal-view.h0000644000175000017500000000216110336223355012654 00000000000000/* Atomix -- a little puzzle game about atoms and molecules. * Copyright (C) 2001 Jens Finke * Copyright (C) 2005 Guilherme de S. Pastore * * 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 2 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, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifndef _ATOMIX_GOAL_VIEW_H_ #define _ATOMIX_GOAL_VIEW_H_ #include #include "theme.h" #include "goal.h" void goal_view_init (Theme * theme, GnomeCanvas * canvas); void goal_view_render (Goal * goal); void goal_view_clear (); #endif /* _ATOMIX_GOAL_VIEW_H_ */ atomix-2.14.0/src/clock.c0000644000175000017500000000742310342120000012032 00000000000000/* Atomix -- a little puzzle game about atoms and molecules. * Copyright (C) 2005 Guilherme de S. Pastore * * 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 2 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, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include #include #include #include "clock.h" static void clock_class_init (ClockClass *klass); static void clock_init (Clock *clock); static GtkLabelClass *parent_class = NULL; GType clock_get_type (void) { static GType object_type = 0; if (!object_type) { static const GTypeInfo object_info = { sizeof (ClockClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) clock_class_init, NULL, /* clas_finalize */ NULL, /* class_data */ sizeof (Clock), 0, /* n_preallocs */ (GInstanceInitFunc) clock_init, }; object_type = g_type_register_static (GTK_TYPE_LABEL, "Clock", &object_info, 0); } return object_type; } static void clock_destroy (GtkObject *object) { g_return_if_fail (object != NULL); clock_stop (CLOCK (object)); GTK_OBJECT_CLASS (parent_class)->destroy (object); } static void clock_class_init (ClockClass *klass) { GtkObjectClass *object_class = (GtkObjectClass *) klass; object_class->destroy = clock_destroy; parent_class = gtk_type_class (gtk_label_get_type ()); } static void clock_init (Clock *clock) { clock->timer_id = -1; clock->update_interval = 1; clock->seconds = time (NULL); clock->stopped = 0; } static void clock_gen_str (Clock *clock) { gchar timestr[64]; time_t secs; secs = time (NULL) - clock->seconds; clock->tm->tm_hour = secs / 3600; secs -= clock->tm->tm_hour * 3600; clock->tm->tm_min = secs / 60; clock->tm->tm_sec = secs - clock->tm->tm_min * 60; strftime (timestr, 64, clock->fmt, clock->tm); gtk_label_set_text (GTK_LABEL (clock), timestr); } static gint clock_timer_callback (gpointer data) { Clock *clock = (Clock *) data; GDK_THREADS_ENTER (); clock_gen_str (clock); GDK_THREADS_LEAVE (); return TRUE; } GtkWidget *clock_new () { Clock *clock = CLOCK (g_object_new (TYPE_CLOCK, NULL)); clock->fmt = g_strdup ("%H:%M:%S"); clock->tm = g_new (struct tm, 1); memset (clock->tm, 0, sizeof (struct tm)); clock->update_interval = 1; clock_gen_str (clock); return GTK_WIDGET (clock); } void clock_set_format (Clock *clock, const gchar *fmt) { g_return_if_fail (clock != NULL); g_return_if_fail (fmt != NULL); g_free (clock->fmt); clock->fmt = g_strdup (fmt); } void clock_set_seconds (Clock *clock, time_t seconds) { g_return_if_fail (clock != NULL); clock->seconds = time (NULL) - seconds; if (clock->timer_id == -1) clock->stopped = seconds; clock_gen_str (clock); } void clock_start (Clock *clock) { g_return_if_fail (clock != NULL); if (clock->timer_id != -1) return; clock_set_seconds (clock, clock->stopped); clock->timer_id = gtk_timeout_add (1000 * clock->update_interval, clock_timer_callback, clock); } void clock_stop (Clock *clock) { g_return_if_fail (clock != NULL); if (clock->timer_id == -1) return; clock->stopped = time (NULL) - clock->seconds; gtk_timeout_remove (clock->timer_id); clock->timer_id = -1; } atomix-2.14.0/src/clock.h0000644000175000017500000000303510342116743012055 00000000000000/* Atomix -- a little puzzle game about atoms and molecules. * Copyright (C) 2005 Guilherme de S. Pastore * * 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 2 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, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include #include G_BEGIN_DECLS #define TYPE_CLOCK (clock_get_type ()) #define CLOCK(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), TYPE_CLOCK, Clock)) #define CLOCK_CLASS(klass) (G_TYPE_CHECK_CAST_CLASS((klass), TYPE_CLOCK, ClockClass)) typedef struct { GtkLabel widget; gint timer_id; gint update_interval; time_t seconds; time_t stopped; gchar *fmt; struct tm *tm; } Clock; typedef struct { GtkLabelClass parent_class; } ClockClass; GType clock_get_type (void); GtkWidget *clock_new (void); void clock_set_format (Clock *, const gchar *); void clock_set_seconds (Clock *, time_t); void clock_set_update_interval (Clock *, gint); void clock_start (Clock *); void clock_stop (Clock *); G_END_DECLS atomix-2.14.0/src/level-convert.c0000644000175000017500000003700710336223355013551 00000000000000/* Atomix -- a little puzzle game about atoms and molecules. * Copyright (C) 1999-2001 Jens Finke * Copyright (C) 2005 Guilherme de S. Pastore * * 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 2 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, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include #include #include #include "playfield.h" #include "tile.h" #include "level.h" #include "level-private.h" enum { OLD_TILE_TYPE_NONE, OLD_TILE_TYPE_MOVEABLE, OLD_TILE_TYPE_OBSTACLE, OLD_TILE_TYPE_DECOR }; typedef struct { GQuark id; gchar *string; } TranslationItem; static TranslationItem atom_map [] = { { 0, "fucked-up" }, { 1, "atom-h" }, { 2, "atom-o" }, { 3, "atom-c" }, { 0, NULL } }; static TranslationItem link_map [] = { { 0, "fucked-up" }, { 1, "link-top" }, { 2, "link-top-right" }, { 3, "link-right" }, { 4, "link-bottom-right" }, { 5, "link-bottom" }, { 6, "link-bottom-left" }, { 7, "link-left" }, { 8, "link-top-left" }, { 9, "link-top-double" }, { 10, "link-right-double" }, { 11, "link-bottom-double" }, { 12, "link-left-double" }, { 0, NULL } }; static TranslationItem wall_map [] = { { 0, "wall-single" }, { 1, "wall-vertical-bottom-end" }, { 2, "wall-single" }, { 3, "wall-bottom-left" }, { 4, "wall-vertical-top-end" }, { 5, "wall-vertical" }, { 6, "wall-top-left" }, { 7, "wall-vertical-rightx" }, { 8, "wall-single" }, { 9, "wall-bottom-right" }, { 10, "wall-horizontal" }, { 11, "wall-horizontal-topx" }, { 12, "wall-top-right" }, { 13, "wall-vertical-leftx" }, { 14, "wall-horizontal-bottomx" }, { 15, "wall-single"}, { 0, NULL } }; static void calculate_translation_quark (TranslationItem array[]); static Tile* update_tile (Tile *tile); static Tile* old_tile_load_xml (xmlNodePtr node, gint revision); static Level* old_level_load_xml_file (gchar *file_path); static PlayField* old_playfield_load_xml (xmlNodePtr pf_node, gint revision, gboolean is_env); static void save_environment (PlayField *pf, xmlNodePtr parent); static void save_tile (xmlNodePtr parent, Tile *tile); static void save_only_atoms (PlayField *pf, xmlNodePtr parent); static void calculate_translation_quark (TranslationItem array[]) { gint i = 0; for (; array[i].string != NULL; i++) { array[i].id = g_quark_from_string (array[i].string); } } static Level *old_level_load_xml_file (gchar *file_path) { xmlDocPtr doc; xmlNodePtr node; Level *level; gchar *prop_value; gint revision = 1; /* read file */ doc = xmlParseFile (file_path); if (doc == NULL) { g_warning ("Couldn't parse xml file."); return NULL; } level = level_new (); node = doc->xmlRootNode; while (node != NULL) { if (g_ascii_strcasecmp(node->name,"LEVEL") == 0) { /* handle level node */ prop_value = xmlGetProp (node, "name"); level->priv->name = g_strdup (prop_value); node = node->xmlChildrenNode; } else { if (g_ascii_strcasecmp(node->name, "REVISION") == 0) { /* handle revision number */ gchar *content = xmlNodeGetContent (node); revision = atoi (content); g_free (content); } else if (!g_ascii_strcasecmp (node->name, "TIME")) { /* deprecated tag, overread it */ } else if (!g_ascii_strcasecmp (node->name, "THEME")) { /* deprecated tag, overread it */ } else if (!g_ascii_strcasecmp (node->name, "NEXT")) { /* deprecated tag, overread it */ } else if (!g_ascii_strcasecmp (node->name, "PLAYFIELD")) { /* handle playfield node */ level->priv->environment = old_playfield_load_xml (node, revision, TRUE); level->priv->scenario = old_playfield_load_xml (node, revision, FALSE); } else if (!g_ascii_strcasecmp (node->name, "GOAL")) { /* handle goal node */ level->priv->goal = old_playfield_load_xml (node, revision, FALSE); } else if (!g_ascii_strcasecmp (node->name, "FIRST_LEVEL")) { /* deprecated tag, overread it */ } else if (g_ascii_strcasecmp(node->name, "BONUS_LEVEL") == 0) { /* deprecated tag, overread it */ } else if (!g_ascii_strcasecmp (node->name, "text")) { } else { g_message ("Unknown TAG, ignoring <%s>.", node->name); } node = node->next; } } xmlFreeDoc (doc); return level; } static PlayField *old_playfield_load_xml (xmlNodePtr pf_node, gint revision, gboolean is_env) { xmlNodePtr tile_node; PlayField *pf; gint row, col; gchar *prop_value; gint n_rows, n_cols; Tile *tile; TileType tile_type; pf = playfield_new (); /* read the matrix */ row = col = 0; /* reading number of columns and rows */ prop_value = xmlGetProp (pf_node, "rows"); n_rows = atoi (prop_value); prop_value = xmlGetProp (pf_node, "cols"); n_cols = atoi (prop_value); playfield_set_matrix_size (pf, n_rows, n_cols); /* reading non empty tiles */ tile_node = pf_node->xmlChildrenNode; while (tile_node) { if (g_ascii_strcasecmp (tile_node->name, "TILE") == 0) { prop_value = xmlGetProp (tile_node, "row"); row = atoi (prop_value); prop_value = xmlGetProp (tile_node, "col"); col = atoi (prop_value); tile = old_tile_load_xml (tile_node, revision); tile_type = tile_get_tile_type (tile); if (is_env && tile_type == TILE_TYPE_WALL) playfield_set_tile (pf, row, col, tile); else if (!is_env && tile_type == TILE_TYPE_ATOM) playfield_set_tile (pf, row, col, tile); g_object_unref (tile); } else if (!g_ascii_strcasecmp (tile_node->name, "text")) { } else { g_print ("playfield.: Unexpected Tag (<%s>), ignoring.\n", tile_node->name); } tile_node = tile_node->next; } return pf; } static Tile *old_tile_load_xml (xmlNodePtr node, gint revision) { xmlNodePtr child; Tile *tile = NULL; TileType type = TILE_TYPE_UNKNOWN; gint img_id; gint conn_id; gchar *content; child = node->xmlChildrenNode; while (child) { if (g_ascii_strcasecmp (child->name, "TYPE") == 0) { int otype; g_assert (tile == NULL); /* handle tile type */ content = xmlNodeGetContent (child); otype = (atoi(content)); switch (otype) { case OLD_TILE_TYPE_NONE: type = TILE_TYPE_NONE; break; case OLD_TILE_TYPE_MOVEABLE: type = TILE_TYPE_ATOM; break; case OLD_TILE_TYPE_OBSTACLE: type = TILE_TYPE_WALL; break; case OLD_TILE_TYPE_DECOR: type = TILE_TYPE_NONE; break; default: type = TILE_TYPE_UNKNOWN; break; }; tile = tile_new (type); g_free(content); } else if (g_ascii_strcasecmp (child->name, "IMG_ID") == 0) { /* handle img id node */ g_assert (tile != NULL); content = xmlNodeGetContent (child); img_id = atoi (content); if (type == TILE_TYPE_ATOM) tile_set_base_id (tile, atom_map[img_id].id); else if (type == TILE_TYPE_WALL) tile_set_base_id (tile, wall_map[img_id].id); else tile_set_base_id (tile, (GQuark) img_id); g_free(content); } else if (g_ascii_strcasecmp (child->name, "CONN_ID") == 0) { g_assert (tile != NULL); content = xmlNodeGetContent (child); conn_id = atoi (content); tile_add_sub_id (tile, link_map[conn_id].id, TILE_SUB_UNDERLAY); g_free (content); } else if (!g_ascii_strcasecmp (child->name, "text")) { } else { g_print ("tile.c: Unknown TAG, ignoring <%s>\n", child->name); } child = child->next; } return tile; } static void new_level_write_file (Level *level) { xmlDocPtr doc; xmlAttrPtr attr; xmlNodePtr level_node; xmlNodePtr node; g_return_if_fail (IS_LEVEL (level)); /* create xml doc */ doc = xmlNewDoc ("1.0"); /* level name */ level_node = xmlNewDocNode (doc, NULL, "level", NULL); doc->xmlRootNode = level_node; attr = xmlSetProp (level_node, "name", g_strdup (level->priv->name)); /* Playfield */ node = xmlNewChild (level_node, NULL, "environment", NULL); save_environment (level->priv->environment, node); node = xmlNewChild (level_node, NULL, "scenario", NULL); save_only_atoms (level->priv->scenario, node); /* Goal */ node = xmlNewChild(level_node, NULL, "goal", NULL); save_only_atoms (level->priv->goal, node); xmlSaveFormatFile ("-", doc, 1); xmlFreeDoc(doc); } static PlayField *convert_environment (PlayField *pf) { int r,c; Tile *tile; Tile *new_tile; PlayField *result; PlayField *pf_border; g_return_val_if_fail (IS_PLAYFIELD (pf), NULL); pf_border = playfield_new (); playfield_set_matrix_size (pf_border, playfield_get_n_rows (pf)+2, playfield_get_n_cols (pf)+2); for (r = 0; r < playfield_get_n_rows (pf); r++) { for (c = 0; c < playfield_get_n_cols (pf); c++) { tile = playfield_get_tile (pf, r, c); playfield_set_tile (pf_border, r+1, c+1, tile); if (tile) g_object_unref (tile); } } result = playfield_new (); playfield_set_matrix_size (result, playfield_get_n_rows (pf_border), playfield_get_n_cols (pf_border)); for (r = 0; r < playfield_get_n_rows (result); r++) { for (c = 0; c < playfield_get_n_cols (result); c++) { tile = playfield_get_tile (pf_border, r, c); new_tile = update_tile (tile); if (new_tile) { playfield_set_tile (result, r, c, new_tile); g_object_unref (new_tile); } if (tile) g_object_unref (tile); } } g_object_unref (pf_border); return result; } static PlayField *convert_scenario (PlayField *pf) { int r,c; Tile *tile; PlayField *pf_border; pf_border = playfield_new (); playfield_set_matrix_size (pf_border, playfield_get_n_rows (pf)+2, playfield_get_n_cols (pf)+2); for (r = 0; r < playfield_get_n_rows (pf); r++) { for (c = 0; c < playfield_get_n_cols (pf); c++) { tile = playfield_get_tile (pf, r, c); playfield_set_tile (pf_border, r+1, c+1, tile); if (tile) g_object_unref (tile); } } return pf_border; } static Tile *update_tile (Tile *tile) { static GQuark wall_id = 0; Tile *new_tile = NULL; TileType type; if (!wall_id) wall_id = g_quark_from_static_string ("wall-single"); if (tile == NULL) return NULL; type = tile_get_tile_type (tile); if (type == TILE_TYPE_WALL) { new_tile = tile_copy (tile); tile_set_base_id (new_tile, wall_id); } return new_tile; } static void save_environment (PlayField *pf, xmlNodePtr parent) { xmlNodePtr node; xmlNodePtr row_node; xmlNodePtr col_node; gchar *buffer; gint r,c; Tile *tile; g_return_if_fail (IS_PLAYFIELD (pf)); g_return_if_fail (parent != NULL); buffer = g_new0 (gchar, 5); g_snprintf (buffer, 5, "%i", playfield_get_n_rows (pf)); node = xmlNewChild (parent, NULL, "n_rows", buffer); g_snprintf (buffer, 5, "%i", playfield_get_n_cols (pf)); node = xmlNewChild (parent, NULL, "n_columns", buffer); for (r = 0; r < playfield_get_n_rows (pf); r++) { row_node = NULL; for (c = 0; c < playfield_get_n_cols (pf); c++) { tile = playfield_get_tile (pf, r, c); if (tile != NULL && tile_get_tile_type (tile) != TILE_TYPE_ATOM) { if (row_node == NULL) { row_node = xmlNewChild (parent, NULL, "row", NULL); g_snprintf (buffer, 5, "%i", r); xmlSetProp (row_node, "no", buffer); } col_node = xmlNewChild (row_node, NULL, "col", NULL); g_snprintf (buffer, 5, "%i", c); xmlSetProp (col_node, "no", buffer); save_tile (col_node, tile); } if (tile != NULL) g_object_unref (tile); } } } static void save_only_atoms (PlayField *pf, xmlNodePtr parent) { xmlNodePtr node = NULL; xmlNodePtr row_node = NULL; xmlNodePtr col_node = NULL; gchar *buffer; gint r,c; gint last_written_r = -1; Tile *tile; g_return_if_fail (IS_PLAYFIELD (pf)); g_return_if_fail (parent != NULL); buffer = g_new0 (gchar, 5); g_snprintf (buffer, 5, "%i", playfield_get_n_rows (pf)); node = xmlNewChild (parent, NULL, "n_rows", buffer); g_snprintf (buffer, 5, "%i", playfield_get_n_cols (pf)); node = xmlNewChild (parent, NULL, "n_columns", buffer); for (r = 0; r < playfield_get_n_rows (pf); r++) { for (c = 0; c < playfield_get_n_cols (pf); c++) { tile = playfield_get_tile (pf, r, c); if (tile != NULL && tile_get_tile_type (tile) == TILE_TYPE_ATOM) { if (r != last_written_r) { row_node = xmlNewChild (parent, NULL, "row", NULL); g_snprintf (buffer, 5, "%i", r); xmlSetProp (row_node, "no", buffer); } col_node = xmlNewChild (row_node, NULL, "col", NULL); g_snprintf (buffer, 5, "%i", c); xmlSetProp (col_node, "no", buffer); save_tile (col_node, tile); last_written_r = r; } if (tile) g_object_unref (tile); } } g_free (buffer); } static void save_tile (xmlNodePtr parent, Tile *tile) { xmlNodePtr tile_node; GSList *elem; TileType type; gchar *type_str = NULL; if (tile == NULL) return; tile_node = xmlNewChild (parent, NULL, "tile", NULL); type = tile_get_tile_type (tile); switch (type) { case TILE_TYPE_ATOM: type_str = "TILE_TYPE_ATOM"; break; case TILE_TYPE_WALL: type_str = "TILE_TYPE_WALL"; break; case TILE_TYPE_FLOOR: type_str = "TILE_TYPE_FLOOR"; break; } if (type_str == NULL) return; xmlNewChild (tile_node, NULL, "type", type_str); xmlNewChild (tile_node, NULL, "base", g_quark_to_string (tile_get_base_id (tile))); elem = tile_get_sub_ids (tile, TILE_SUB_UNDERLAY); for (; elem != NULL; elem = elem->next) { xmlNewChild (tile_node, NULL, "underlay", g_quark_to_string ((GQuark) elem->data)); } elem = tile_get_sub_ids (tile, TILE_SUB_OVERLAY); for (; elem != NULL; elem = elem->next) { xmlNewChild (tile_node, NULL, "overlay", g_quark_to_string ((GQuark) elem->data)); } } int main (int argc, char** argv) { Level *level; gchar *src_file = NULL; PlayField *npf; g_type_init (); calculate_translation_quark (atom_map); calculate_translation_quark (link_map); calculate_translation_quark (wall_map); if (argc < 2) { g_error ("level-convert priv->environment); playfield_print (level->priv->scenario); #endif npf = convert_environment (level->priv->environment); g_object_unref (level->priv->environment); level->priv->environment = npf; npf = convert_scenario (level->priv->scenario); g_object_unref (level->priv->scenario); level->priv->scenario = npf; new_level_write_file (level); g_object_unref (level); return 0; } atomix-2.14.0/src/pf-test.c0000644000175000017500000000176410216610724012344 00000000000000#include #include "playfield.h" int main (void) { PlayField *pf; PlayField *spf; PlayField *cpf; Tile *tile; g_type_init (); pf = playfield_new (); playfield_set_matrix_size (pf, 10, 7); tile = tile_new (TILE_TYPE_ATOM); playfield_set_tile (pf, 0, 0, tile); playfield_set_tile (pf, 1, 0, tile); playfield_set_tile (pf, 2, 0, tile); playfield_set_tile (pf, 6, 3, tile); g_object_unref (tile); playfield_print (pf); /* test copy */ g_message ("==== Copy Tests ===="); cpf = playfield_copy (pf); playfield_print (cpf); tile = tile_new (TILE_TYPE_WALL); playfield_set_tile (pf, 3, 4, tile); g_object_unref (tile); playfield_print (pf); playfield_print (cpf); g_object_unref (cpf); /* test swap */ g_message ("==== Swap Tests ===="); playfield_swap_tiles (pf, 2, 0, 0, 2); playfield_print (pf); /* test strip */ spf = playfield_strip (pf); playfield_print (spf); g_object_unref (spf); g_object_unref (pf); exit (0); } atomix-2.14.0/src/atomix-ui.xml0000644000175000017500000000332710274470024013252 00000000000000 atomix-2.14.0/level/0000777000175000017500000000000010404437741011217 500000000000000atomix-2.14.0/level/Makefile.am0000644000175000017500000000105010343721350013155 00000000000000leveldir = $(pkgdatadir)/level level_files = \ aceticacid.atomix.xml \ acetone.atomix.xml \ butanol.atomix.xml \ cyclobutane.atomix.xml \ dimethylether.atomix.xml \ ethane.atomix.xml \ ethanal.atomix.xml \ ethanol.atomix.xml \ ethylene.atomix.xml \ glycerin.atomix.xml \ lactic-acid.atomix.xml \ methanal.atomix.xml \ methane.atomix.xml \ methanol.atomix.xml \ propanal.atomix.xml \ propylene.atomix.xml \ pyran.atomix.xml \ transbutylen.atomix.xml \ water.atomix.xml level_DATA = $(level_files) sequence EXTRA_DIST = $(level_DATA)atomix-2.14.0/level/Makefile.in0000644000175000017500000002535010404437653013207 00000000000000# Makefile.in generated by automake 1.9.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ srcdir = @srcdir@ top_srcdir = @top_srcdir@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ top_builddir = .. am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd INSTALL = @INSTALL@ install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : subdir = level DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; am__strip_dir = `echo $$p | sed -e 's|^.*/||'`; am__installdirs = "$(DESTDIR)$(leveldir)" levelDATA_INSTALL = $(INSTALL_DATA) DATA = $(level_DATA) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AMDEP_FALSE = @AMDEP_FALSE@ AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ ATOMIX_CFLAGS = @ATOMIX_CFLAGS@ ATOMIX_LIBS = @ATOMIX_LIBS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ EXTRA_WARNING_CFLAGS = @EXTRA_WARNING_CFLAGS@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@ INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@ INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_ICONV = @INTLTOOL_ICONV@ INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@ INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_MSGFMT = @INTLTOOL_MSGFMT@ INTLTOOL_MSGMERGE = @INTLTOOL_MSGMERGE@ INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@ INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@ INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@ INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@ INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@ INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@ INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@ INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@ INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@ INTLTOOL_XGETTEXT = @INTLTOOL_XGETTEXT@ INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@ INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ RANLIB = @RANLIB@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ ac_ct_CC = @ac_ct_CC@ ac_ct_RANLIB = @ac_ct_RANLIB@ ac_ct_STRIP = @ac_ct_STRIP@ ac_pt_PKG_CONFIG = @ac_pt_PKG_CONFIG@ am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build_alias = @build_alias@ datadir = @datadir@ exec_prefix = @exec_prefix@ host_alias = @host_alias@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ prefix = @prefix@ program_transform_name = @program_transform_name@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ leveldir = $(pkgdatadir)/level level_files = \ aceticacid.atomix.xml \ acetone.atomix.xml \ butanol.atomix.xml \ cyclobutane.atomix.xml \ dimethylether.atomix.xml \ ethane.atomix.xml \ ethanal.atomix.xml \ ethanol.atomix.xml \ ethylene.atomix.xml \ glycerin.atomix.xml \ lactic-acid.atomix.xml \ methanal.atomix.xml \ methane.atomix.xml \ methanol.atomix.xml \ propanal.atomix.xml \ propylene.atomix.xml \ pyran.atomix.xml \ transbutylen.atomix.xml \ water.atomix.xml level_DATA = $(level_files) sequence EXTRA_DIST = $(level_DATA) all: all-am .SUFFIXES: $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ && exit 0; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu level/Makefile'; \ cd $(top_srcdir) && \ $(AUTOMAKE) --gnu level/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh uninstall-info-am: install-levelDATA: $(level_DATA) @$(NORMAL_INSTALL) test -z "$(leveldir)" || $(mkdir_p) "$(DESTDIR)$(leveldir)" @list='$(level_DATA)'; for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ f=$(am__strip_dir) \ echo " $(levelDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(leveldir)/$$f'"; \ $(levelDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(leveldir)/$$f"; \ done uninstall-levelDATA: @$(NORMAL_UNINSTALL) @list='$(level_DATA)'; for p in $$list; do \ f=$(am__strip_dir) \ echo " rm -f '$(DESTDIR)$(leveldir)/$$f'"; \ rm -f "$(DESTDIR)$(leveldir)/$$f"; \ done tags: TAGS TAGS: ctags: CTAGS CTAGS: distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ list='$(DISTFILES)'; for file in $$list; do \ case $$file in \ $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ esac; \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ if test "$$dir" != "$$file" && test "$$dir" != "."; then \ dir="/$$dir"; \ $(mkdir_p) "$(distdir)$$dir"; \ else \ dir=''; \ fi; \ if test -d $$d/$$file; then \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ else \ test -f $(distdir)/$$file \ || cp -p $$d/$$file $(distdir)/$$file \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile $(DATA) installdirs: for dir in "$(DESTDIR)$(leveldir)"; do \ test -z "$$dir" || $(mkdir_p) "$$dir"; \ done install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic mostlyclean-am distclean: distclean-am -rm -f Makefile distclean-am: clean-am distclean-generic dvi: dvi-am dvi-am: html: html-am info: info-am info-am: install-data-am: install-levelDATA install-exec-am: install-info: install-info-am install-man: installcheck-am: maintainer-clean: maintainer-clean-am -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-generic pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-info-am uninstall-levelDATA .PHONY: all all-am check check-am clean clean-generic distclean \ distclean-generic distdir dvi dvi-am html html-am info info-am \ install install-am install-data install-data-am install-exec \ install-exec-am install-info install-info-am install-levelDATA \ install-man install-strip installcheck installcheck-am \ installdirs maintainer-clean maintainer-clean-generic \ mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \ uninstall-am uninstall-info-am uninstall-levelDATA # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: atomix-2.14.0/level/aceticacid.atomix.xml0000644000175000017500000002541110357257614015237 00000000000000 13 13 TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single 13 13 TILE_TYPE_ATOM atom-o link-right link-left TILE_TYPE_ATOM atom-h link-left TILE_TYPE_ATOM atom-h link-right TILE_TYPE_ATOM atom-h link-top TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-c link-right link-left link-top-double TILE_TYPE_ATOM atom-o link-bottom-double TILE_TYPE_ATOM atom-h link-bottom 3 5 TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-o link-bottom-double TILE_TYPE_ATOM atom-h link-right TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-c link-right link-left link-top-double TILE_TYPE_ATOM atom-o link-right link-left TILE_TYPE_ATOM atom-h link-left TILE_TYPE_ATOM atom-h link-top atomix-2.14.0/level/acetone.atomix.xml0000644000175000017500000003723510357257614014613 00000000000000 15 15 TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single 15 15 TILE_TYPE_ATOM atom-o link-top-double TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-h link-top TILE_TYPE_ATOM atom-c link-right link-left link-bottom-double TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-h link-top TILE_TYPE_ATOM atom-h link-right TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-h link-left 3 5 TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-h link-right TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-c link-right link-left link-bottom-double TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-h link-left TILE_TYPE_ATOM atom-h link-top TILE_TYPE_ATOM atom-o link-top-double TILE_TYPE_ATOM atom-h link-top atomix-2.14.0/level/butanol.atomix.xml0000644000175000017500000004414010357257614014632 00000000000000 15 15 TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single 15 15 TILE_TYPE_ATOM atom-h link-top TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-h link-left TILE_TYPE_ATOM atom-h link-top TILE_TYPE_ATOM atom-h link-top TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-o link-top link-bottom TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-h link-right TILE_TYPE_ATOM atom-h link-top TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left 4 6 TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-h link-right TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-h link-left TILE_TYPE_ATOM atom-h link-top TILE_TYPE_ATOM atom-h link-top TILE_TYPE_ATOM atom-h link-top TILE_TYPE_ATOM atom-o link-top link-bottom TILE_TYPE_ATOM atom-h link-top atomix-2.14.0/level/cyclobutane.atomix.xml0000644000175000017500000003245010357257614015477 00000000000000 13 13 TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single 13 13 TILE_TYPE_ATOM atom-h link-right TILE_TYPE_ATOM atom-h link-left TILE_TYPE_ATOM atom-h link-top TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-h link-right TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-h link-left TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-h link-top 4 4 TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-h link-right TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-h link-left TILE_TYPE_ATOM atom-h link-right TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-h link-left TILE_TYPE_ATOM atom-h link-top TILE_TYPE_ATOM atom-h link-top atomix-2.14.0/level/dimethylether.atomix.xml0000644000175000017500000003717310357257614016045 00000000000000 15 15 TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single 15 15 TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-o link-right link-left TILE_TYPE_ATOM atom-h link-right TILE_TYPE_ATOM atom-h link-top TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-h link-left TILE_TYPE_ATOM atom-h link-top TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left 3 5 TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-h link-right TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-o link-right link-left TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-h link-left TILE_TYPE_ATOM atom-h link-top TILE_TYPE_ATOM atom-h link-top atomix-2.14.0/level/ethane.atomix.xml0000644000175000017500000002716510357257614014442 00000000000000 13 13 TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single 13 13 TILE_TYPE_ATOM atom-h link-top-right TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-c link-top link-bottom-right link-bottom link-bottom-left TILE_TYPE_ATOM atom-c link-top link-top-right link-bottom link-top-left TILE_TYPE_ATOM atom-h link-bottom-right TILE_TYPE_ATOM atom-h link-top TILE_TYPE_ATOM atom-h link-top-left TILE_TYPE_ATOM atom-h link-bottom-left 4 3 TILE_TYPE_ATOM atom-h link-bottom-right TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-h link-bottom-left TILE_TYPE_ATOM atom-c link-top link-top-right link-bottom link-top-left TILE_TYPE_ATOM atom-c link-top link-bottom-right link-bottom link-bottom-left TILE_TYPE_ATOM atom-h link-top-right TILE_TYPE_ATOM atom-h link-top TILE_TYPE_ATOM atom-h link-top-left atomix-2.14.0/level/ethanal.atomix.xml0000644000175000017500000002714010357257614014603 00000000000000 13 13 TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single 13 13 TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-h link-top TILE_TYPE_ATOM atom-h link-right TILE_TYPE_ATOM atom-c link-top link-left link-right-double TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-o link-left-double 3 4 TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-h link-right TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-c link-top link-left link-right-double TILE_TYPE_ATOM atom-o link-left-double TILE_TYPE_ATOM atom-h link-top atomix-2.14.0/level/ethanol.atomix.xml0000644000175000017500000003067510357257614014630 00000000000000 14 14 TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single 14 14 TILE_TYPE_ATOM atom-h link-top TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-h link-top TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-h link-right TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-o link-right link-left TILE_TYPE_ATOM atom-h link-left 3 5 TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-h link-right TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-o link-right link-left TILE_TYPE_ATOM atom-h link-left TILE_TYPE_ATOM atom-h link-top TILE_TYPE_ATOM atom-h link-top atomix-2.14.0/level/ethylene.atomix.xml0000644000175000017500000002540410357257614015005 00000000000000 13 13 TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single 13 13 TILE_TYPE_ATOM atom-h link-top-right TILE_TYPE_ATOM atom-c link-top-right link-bottom-right link-left-double TILE_TYPE_ATOM atom-h link-bottom-left TILE_TYPE_ATOM atom-c link-bottom-left link-top-left link-right-double TILE_TYPE_ATOM atom-h link-top-left TILE_TYPE_ATOM atom-h link-bottom-right 3 4 TILE_TYPE_ATOM atom-h link-bottom-right TILE_TYPE_ATOM atom-h link-bottom-left TILE_TYPE_ATOM atom-c link-bottom-left link-top-left link-right-double TILE_TYPE_ATOM atom-c link-top-right link-bottom-right link-left-double TILE_TYPE_ATOM atom-h link-top-right TILE_TYPE_ATOM atom-h link-top-left atomix-2.14.0/level/glycerin.atomix.xml0000644000175000017500000004023110357257614014777 00000000000000 15 13 TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single 15 13 TILE_TYPE_ATOM atom-h link-top TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-o link-right link-left TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-h link-left TILE_TYPE_ATOM atom-h link-right TILE_TYPE_ATOM atom-o link-right link-left TILE_TYPE_ATOM atom-h link-right TILE_TYPE_ATOM atom-o link-right link-left TILE_TYPE_ATOM atom-h link-right TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-h link-left TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-h link-left 5 4 TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-h link-right TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-o link-right link-left TILE_TYPE_ATOM atom-h link-left TILE_TYPE_ATOM atom-h link-right TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-o link-right link-left TILE_TYPE_ATOM atom-h link-left TILE_TYPE_ATOM atom-h link-right TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-o link-right link-left TILE_TYPE_ATOM atom-h link-left TILE_TYPE_ATOM atom-h link-top atomix-2.14.0/level/lactic-acid.atomix.xml0000644000175000017500000003757010357257614015334 00000000000000 15 15 TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single 15 15 TILE_TYPE_ATOM atom-h link-bottom-right TILE_TYPE_ATOM atom-c link-top-right link-bottom-right link-bottom-left link-top-left TILE_TYPE_ATOM atom-o link-bottom-right link-top-left TILE_TYPE_ATOM atom-c link-top-right link-bottom-right link-bottom-left link-top-left TILE_TYPE_ATOM atom-c link-right link-bottom-left link-top-double TILE_TYPE_ATOM atom-o link-bottom-double TILE_TYPE_ATOM atom-h link-left TILE_TYPE_ATOM atom-o link-right link-left TILE_TYPE_ATOM atom-h link-bottom-right TILE_TYPE_ATOM atom-h link-top-left TILE_TYPE_ATOM atom-h link-top-right TILE_TYPE_ATOM atom-h link-top-left 5 6 TILE_TYPE_ATOM atom-h link-bottom-right TILE_TYPE_ATOM atom-o link-bottom-double TILE_TYPE_ATOM atom-o link-bottom-right link-top-left TILE_TYPE_ATOM atom-c link-right link-bottom-left link-top-double TILE_TYPE_ATOM atom-o link-right link-left TILE_TYPE_ATOM atom-h link-left TILE_TYPE_ATOM atom-h link-bottom-right TILE_TYPE_ATOM atom-c link-top-right link-bottom-right link-bottom-left link-top-left TILE_TYPE_ATOM atom-c link-top-right link-bottom-right link-bottom-left link-top-left TILE_TYPE_ATOM atom-h link-top-left TILE_TYPE_ATOM atom-h link-top-right TILE_TYPE_ATOM atom-h link-top-left atomix-2.14.0/level/methanal.atomix.xml0000644000175000017500000003327110357257614014762 00000000000000 15 15 TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single 15 15 TILE_TYPE_ATOM atom-o link-left-double TILE_TYPE_ATOM atom-c link-top link-bottom link-right-double TILE_TYPE_ATOM atom-h link-top TILE_TYPE_ATOM atom-h link-bottom 3 2 TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-c link-top link-bottom link-right-double TILE_TYPE_ATOM atom-o link-left-double TILE_TYPE_ATOM atom-h link-top atomix-2.14.0/level/methane.atomix.xml0000644000175000017500000002666510357257614014623 00000000000000 13 15 TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single 13 15 TILE_TYPE_ATOM atom-h link-left TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-h link-right TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-h link-top 3 3 TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-h link-right TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-h link-left TILE_TYPE_ATOM atom-h link-top atomix-2.14.0/level/methanol.atomix.xml0000644000175000017500000002722210357257614014777 00000000000000 14 15 TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single 14 15 TILE_TYPE_ATOM atom-o link-right link-left TILE_TYPE_ATOM atom-h link-top TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-h link-left TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-h link-right 3 4 TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-h link-right TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-o link-right link-left TILE_TYPE_ATOM atom-h link-left TILE_TYPE_ATOM atom-h link-top atomix-2.14.0/level/propanal.atomix.xml0000644000175000017500000003463510357257614015012 00000000000000 15 13 TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single 15 13 TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-c link-right link-bottom link-left link-bottom-double TILE_TYPE_ATOM atom-h link-top TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-h link-left TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-h link-right TILE_TYPE_ATOM atom-o link-top-double TILE_TYPE_ATOM atom-h link-top 3 5 TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-h link-right TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-c link-right link-bottom link-left link-bottom-double TILE_TYPE_ATOM atom-h link-left TILE_TYPE_ATOM atom-h link-top TILE_TYPE_ATOM atom-h link-top TILE_TYPE_ATOM atom-o link-top-double atomix-2.14.0/level/propylene.atomix.xml0000644000175000017500000003251310357257614015204 00000000000000 13 14 TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single 13 14 TILE_TYPE_ATOM atom-h link-bottom-left TILE_TYPE_ATOM atom-h link-top TILE_TYPE_ATOM atom-c link-top-right link-bottom-right link-left-double TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-h link-right TILE_TYPE_ATOM atom-c link-top link-left link-right-double TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-h link-top-left 3 5 TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-h link-bottom-left TILE_TYPE_ATOM atom-h link-right TILE_TYPE_ATOM atom-c link-top link-right link-bottom link-left TILE_TYPE_ATOM atom-c link-top link-left link-right-double TILE_TYPE_ATOM atom-c link-top-right link-bottom-right link-left-double TILE_TYPE_ATOM atom-h link-top TILE_TYPE_ATOM atom-h link-top-left atomix-2.14.0/level/pyran.atomix.xml0000644000175000017500000003712510357257614014324 00000000000000 15 15 TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single 15 15 TILE_TYPE_ATOM atom-c link-top link-bottom-right link-left-double TILE_TYPE_ATOM atom-h link-bottom-left TILE_TYPE_ATOM atom-o link-top-right link-bottom-right TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-c link-top-right link-bottom link-left-double TILE_TYPE_ATOM atom-c link-bottom link-top-left link-right-double TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-h link-top TILE_TYPE_ATOM atom-c link-top link-bottom-left link-right-double TILE_TYPE_ATOM atom-h link-top-left TILE_TYPE_ATOM atom-h link-top TILE_TYPE_ATOM atom-c link-top-right link-bottom-right link-bottom-left link-top-left 5 5 TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-h link-bottom TILE_TYPE_ATOM atom-c link-top link-bottom-left link-right-double TILE_TYPE_ATOM atom-c link-top link-bottom-right link-left-double TILE_TYPE_ATOM atom-h link-bottom-left TILE_TYPE_ATOM atom-o link-top-right link-bottom-right TILE_TYPE_ATOM atom-c link-top-right link-bottom-right link-bottom-left link-top-left TILE_TYPE_ATOM atom-c link-bottom link-top-left link-right-double TILE_TYPE_ATOM atom-c link-top-right link-bottom link-left-double TILE_TYPE_ATOM atom-h link-top-left TILE_TYPE_ATOM atom-h link-top TILE_TYPE_ATOM atom-h link-top atomix-2.14.0/level/transbutylen.atomix.xml0000644000175000017500000004044410357257614015723 00000000000000 15 15 TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single 15 15 TILE_TYPE_ATOM atom-c link-top-right link-bottom-right link-left-double TILE_TYPE_ATOM atom-c link-bottom-left link-top-left link-right-double TILE_TYPE_ATOM atom-h link-bottom-left TILE_TYPE_ATOM atom-h link-top-right TILE_TYPE_ATOM atom-h link-top-left TILE_TYPE_ATOM atom-h link-bottom-right TILE_TYPE_ATOM atom-c link-top-right link-bottom-right link-bottom-left link-top-left TILE_TYPE_ATOM atom-h link-bottom-right TILE_TYPE_ATOM atom-h link-bottom-right TILE_TYPE_ATOM atom-h link-top-left TILE_TYPE_ATOM atom-c link-top-right link-bottom-right link-bottom-left link-top-left TILE_TYPE_ATOM atom-h link-top-left 5 6 TILE_TYPE_ATOM atom-h link-bottom-right TILE_TYPE_ATOM atom-h link-bottom-left TILE_TYPE_ATOM atom-h link-bottom-right TILE_TYPE_ATOM atom-c link-top-right link-bottom-right link-bottom-left link-top-left TILE_TYPE_ATOM atom-h link-bottom-right TILE_TYPE_ATOM atom-c link-bottom-left link-top-left link-right-double TILE_TYPE_ATOM atom-c link-top-right link-bottom-right link-left-double TILE_TYPE_ATOM atom-h link-top-left TILE_TYPE_ATOM atom-c link-top-right link-bottom-right link-bottom-left link-top-left TILE_TYPE_ATOM atom-h link-top-left TILE_TYPE_ATOM atom-h link-top-right TILE_TYPE_ATOM atom-h link-top-left atomix-2.14.0/level/water.atomix.xml0000644000175000017500000002027210357257614014310 00000000000000 12 13 TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single TILE_TYPE_WALL wall-single 12 13 TILE_TYPE_ATOM atom-h link-left TILE_TYPE_ATOM atom-o link-right link-left TILE_TYPE_ATOM atom-h link-right 1 3 TILE_TYPE_ATOM atom-h link-right TILE_TYPE_ATOM atom-o link-right link-left TILE_TYPE_ATOM atom-h link-left atomix-2.14.0/level/sequence0000644000175000017500000000100410336421201012645 00000000000000 atomix-2.14.0/themes/0000777000175000017500000000000010404437741011375 500000000000000atomix-2.14.0/themes/Makefile.am0000644000175000017500000000002307400230744013334 00000000000000SUBDIRS = default atomix-2.14.0/themes/Makefile.in0000644000175000017500000003466210404437654013374 00000000000000# Makefile.in generated by automake 1.9.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ srcdir = @srcdir@ top_srcdir = @top_srcdir@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ top_builddir = .. am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd INSTALL = @INSTALL@ install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : subdir = themes DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = SOURCES = DIST_SOURCES = RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ html-recursive info-recursive install-data-recursive \ install-exec-recursive install-info-recursive \ install-recursive installcheck-recursive installdirs-recursive \ pdf-recursive ps-recursive uninstall-info-recursive \ uninstall-recursive ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AMDEP_FALSE = @AMDEP_FALSE@ AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ ATOMIX_CFLAGS = @ATOMIX_CFLAGS@ ATOMIX_LIBS = @ATOMIX_LIBS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ EXTRA_WARNING_CFLAGS = @EXTRA_WARNING_CFLAGS@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@ INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@ INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_ICONV = @INTLTOOL_ICONV@ INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@ INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_MSGFMT = @INTLTOOL_MSGFMT@ INTLTOOL_MSGMERGE = @INTLTOOL_MSGMERGE@ INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@ INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@ INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@ INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@ INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@ INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@ INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@ INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@ INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@ INTLTOOL_XGETTEXT = @INTLTOOL_XGETTEXT@ INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@ INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ RANLIB = @RANLIB@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ ac_ct_CC = @ac_ct_CC@ ac_ct_RANLIB = @ac_ct_RANLIB@ ac_ct_STRIP = @ac_ct_STRIP@ ac_pt_PKG_CONFIG = @ac_pt_PKG_CONFIG@ am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build_alias = @build_alias@ datadir = @datadir@ exec_prefix = @exec_prefix@ host_alias = @host_alias@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ prefix = @prefix@ program_transform_name = @program_transform_name@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ SUBDIRS = default all: all-recursive .SUFFIXES: $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ && exit 0; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu themes/Makefile'; \ cd $(top_srcdir) && \ $(AUTOMAKE) --gnu themes/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh uninstall-info-am: # This directory's subdirectories are mostly independent; you can cd # into them and run `make' without going through this Makefile. # To change the values of `make' variables: instead of editing Makefiles, # (1) if the variable is set in `config.status', edit `config.status' # (which will cause the Makefiles to be regenerated when you run `make'); # (2) otherwise, pass the desired values on the `make' command line. $(RECURSIVE_TARGETS): @failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ target=`echo $@ | sed s/-recursive//`; \ list='$(SUBDIRS)'; for subdir in $$list; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ dot_seen=yes; \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done; \ if test "$$dot_seen" = "no"; then \ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ fi; test -z "$$fail" mostlyclean-recursive clean-recursive distclean-recursive \ maintainer-clean-recursive: @failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ case "$@" in \ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ *) list='$(SUBDIRS)' ;; \ esac; \ rev=''; for subdir in $$list; do \ if test "$$subdir" = "."; then :; else \ rev="$$subdir $$rev"; \ fi; \ done; \ rev="$$rev ."; \ target=`echo $@ | sed s/-recursive//`; \ for subdir in $$rev; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done && test -z "$$fail" tags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ done ctags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ done ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'`; \ mkid -fID $$unique tags: TAGS TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ here=`pwd`; \ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ include_option=--etags-include; \ empty_fix=.; \ else \ include_option=--include; \ empty_fix=; \ fi; \ list='$(SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test ! -f $$subdir/TAGS || \ tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \ fi; \ done; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$tags $$unique; \ fi ctags: CTAGS CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'`; \ test -z "$(CTAGS_ARGS)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && cd $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) $$here distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ list='$(DISTFILES)'; for file in $$list; do \ case $$file in \ $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ esac; \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ if test "$$dir" != "$$file" && test "$$dir" != "."; then \ dir="/$$dir"; \ $(mkdir_p) "$(distdir)$$dir"; \ else \ dir=''; \ fi; \ if test -d $$d/$$file; then \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ else \ test -f $(distdir)/$$file \ || cp -p $$d/$$file $(distdir)/$$file \ || exit 1; \ fi; \ done list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test -d "$(distdir)/$$subdir" \ || $(mkdir_p) "$(distdir)/$$subdir" \ || exit 1; \ distdir=`$(am__cd) $(distdir) && pwd`; \ top_distdir=`$(am__cd) $(top_distdir) && pwd`; \ (cd $$subdir && \ $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$$top_distdir" \ distdir="$$distdir/$$subdir" \ distdir) \ || exit 1; \ fi; \ done check-am: all-am check: check-recursive all-am: Makefile installdirs: installdirs-recursive installdirs-am: install: install-recursive install-exec: install-exec-recursive install-data: install-data-recursive uninstall: uninstall-recursive install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-recursive install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-recursive clean-am: clean-generic mostlyclean-am distclean: distclean-recursive -rm -f Makefile distclean-am: clean-am distclean-generic distclean-tags dvi: dvi-recursive dvi-am: html: html-recursive info: info-recursive info-am: install-data-am: install-exec-am: install-info: install-info-recursive install-man: installcheck-am: maintainer-clean: maintainer-clean-recursive -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-recursive mostlyclean-am: mostlyclean-generic pdf: pdf-recursive pdf-am: ps: ps-recursive ps-am: uninstall-am: uninstall-info-am uninstall-info: uninstall-info-recursive .PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am \ clean clean-generic clean-recursive ctags ctags-recursive \ distclean distclean-generic distclean-recursive distclean-tags \ distdir dvi dvi-am html html-am info info-am install \ install-am install-data install-data-am install-exec \ install-exec-am install-info install-info-am install-man \ install-strip installcheck installcheck-am installdirs \ installdirs-am maintainer-clean maintainer-clean-generic \ maintainer-clean-recursive mostlyclean mostlyclean-generic \ mostlyclean-recursive pdf pdf-am ps ps-am tags tags-recursive \ uninstall uninstall-am uninstall-info-am # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: atomix-2.14.0/themes/default/0000777000175000017500000000000010404437742013022 500000000000000atomix-2.14.0/themes/default/Makefile.am0000644000175000017500000000210507432032304014760 00000000000000themesdir = $(pkgdatadir)/themes themedir = $(themesdir)/default THEME = \ arrow-bottom.png \ arrow-left.png \ arrow-right.png \ arrow-top.png \ atom-c.png \ atom-f.png \ atom-h.png \ atom-n.png \ atom-o.png \ cursor.png \ floor.png \ link-bottom-double.png \ link-bottom-left.png \ link-bottom-right.png \ link-bottom.png \ link-left-double.png \ link-left.png \ link-right-double.png \ link-right.png \ link-top-double.png \ link-top-left.png \ link-top-right.png \ link-top.png \ shadow-bottom-right.png \ shadow-left-top.png \ shadow-left.png \ shadow-top-left-both.png \ shadow-top-left.png \ shadow-top.png \ theme \ wall-bottom-left.png \ wall-bottom-right.png \ wall-horizontal-left-end.png \ wall-horizontal-right-end.png \ wall-horizontal-bottomx.png \ wall-horizontal-topx.png \ wall-horizontal.png \ wall-single.png \ wall-top-left.png \ wall-top-right.png \ wall-vertical-bottom-end.png \ wall-vertical-leftx.png \ wall-vertical-rightx.png \ wall-vertical-top-end.png \ wall-vertical.png theme_DATA = $(THEME) EXTRA_DIST = $(THEME) atomix-2.14.0/themes/default/Makefile.in0000644000175000017500000002644110404437655015015 00000000000000# Makefile.in generated by automake 1.9.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ srcdir = @srcdir@ top_srcdir = @top_srcdir@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ top_builddir = ../.. am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd INSTALL = @INSTALL@ install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : subdir = themes/default DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; am__strip_dir = `echo $$p | sed -e 's|^.*/||'`; am__installdirs = "$(DESTDIR)$(themedir)" themeDATA_INSTALL = $(INSTALL_DATA) DATA = $(theme_DATA) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AMDEP_FALSE = @AMDEP_FALSE@ AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ ATOMIX_CFLAGS = @ATOMIX_CFLAGS@ ATOMIX_LIBS = @ATOMIX_LIBS@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CATALOGS = @CATALOGS@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ EXTRA_WARNING_CFLAGS = @EXTRA_WARNING_CFLAGS@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ GMOFILES = @GMOFILES@ GMSGFMT = @GMSGFMT@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLLIBS = @INTLLIBS@ INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@ INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@ INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ INTLTOOL_ICONV = @INTLTOOL_ICONV@ INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@ INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@ INTLTOOL_MERGE = @INTLTOOL_MERGE@ INTLTOOL_MSGFMT = @INTLTOOL_MSGFMT@ INTLTOOL_MSGMERGE = @INTLTOOL_MSGMERGE@ INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@ INTLTOOL_PERL = @INTLTOOL_PERL@ INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@ INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@ INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@ INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@ INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@ INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@ INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@ INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@ INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@ INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@ INTLTOOL_XGETTEXT = @INTLTOOL_XGETTEXT@ INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@ INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ POFILES = @POFILES@ POSUB = @POSUB@ PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@ PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@ RANLIB = @RANLIB@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WARN_CFLAGS = @WARN_CFLAGS@ XGETTEXT = @XGETTEXT@ ac_ct_CC = @ac_ct_CC@ ac_ct_RANLIB = @ac_ct_RANLIB@ ac_ct_STRIP = @ac_ct_STRIP@ ac_pt_PKG_CONFIG = @ac_pt_PKG_CONFIG@ am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build_alias = @build_alias@ datadir = @datadir@ exec_prefix = @exec_prefix@ host_alias = @host_alias@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ prefix = @prefix@ program_transform_name = @program_transform_name@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ themesdir = $(pkgdatadir)/themes themedir = $(themesdir)/default THEME = \ arrow-bottom.png \ arrow-left.png \ arrow-right.png \ arrow-top.png \ atom-c.png \ atom-f.png \ atom-h.png \ atom-n.png \ atom-o.png \ cursor.png \ floor.png \ link-bottom-double.png \ link-bottom-left.png \ link-bottom-right.png \ link-bottom.png \ link-left-double.png \ link-left.png \ link-right-double.png \ link-right.png \ link-top-double.png \ link-top-left.png \ link-top-right.png \ link-top.png \ shadow-bottom-right.png \ shadow-left-top.png \ shadow-left.png \ shadow-top-left-both.png \ shadow-top-left.png \ shadow-top.png \ theme \ wall-bottom-left.png \ wall-bottom-right.png \ wall-horizontal-left-end.png \ wall-horizontal-right-end.png \ wall-horizontal-bottomx.png \ wall-horizontal-topx.png \ wall-horizontal.png \ wall-single.png \ wall-top-left.png \ wall-top-right.png \ wall-vertical-bottom-end.png \ wall-vertical-leftx.png \ wall-vertical-rightx.png \ wall-vertical-top-end.png \ wall-vertical.png theme_DATA = $(THEME) EXTRA_DIST = $(THEME) all: all-am .SUFFIXES: $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ && exit 0; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu themes/default/Makefile'; \ cd $(top_srcdir) && \ $(AUTOMAKE) --gnu themes/default/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh uninstall-info-am: install-themeDATA: $(theme_DATA) @$(NORMAL_INSTALL) test -z "$(themedir)" || $(mkdir_p) "$(DESTDIR)$(themedir)" @list='$(theme_DATA)'; for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ f=$(am__strip_dir) \ echo " $(themeDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(themedir)/$$f'"; \ $(themeDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(themedir)/$$f"; \ done uninstall-themeDATA: @$(NORMAL_UNINSTALL) @list='$(theme_DATA)'; for p in $$list; do \ f=$(am__strip_dir) \ echo " rm -f '$(DESTDIR)$(themedir)/$$f'"; \ rm -f "$(DESTDIR)$(themedir)/$$f"; \ done tags: TAGS TAGS: ctags: CTAGS CTAGS: distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ list='$(DISTFILES)'; for file in $$list; do \ case $$file in \ $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ esac; \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ if test "$$dir" != "$$file" && test "$$dir" != "."; then \ dir="/$$dir"; \ $(mkdir_p) "$(distdir)$$dir"; \ else \ dir=''; \ fi; \ if test -d $$d/$$file; then \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ else \ test -f $(distdir)/$$file \ || cp -p $$d/$$file $(distdir)/$$file \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile $(DATA) installdirs: for dir in "$(DESTDIR)$(themedir)"; do \ test -z "$$dir" || $(mkdir_p) "$$dir"; \ done install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic mostlyclean-am distclean: distclean-am -rm -f Makefile distclean-am: clean-am distclean-generic dvi: dvi-am dvi-am: html: html-am info: info-am info-am: install-data-am: install-themeDATA install-exec-am: install-info: install-info-am install-man: installcheck-am: maintainer-clean: maintainer-clean-am -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-generic pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-info-am uninstall-themeDATA .PHONY: all all-am check check-am clean clean-generic distclean \ distclean-generic distdir dvi dvi-am html html-am info info-am \ install install-am install-data install-data-am install-exec \ install-exec-am install-info install-info-am install-man \ install-strip install-themeDATA installcheck installcheck-am \ installdirs maintainer-clean maintainer-clean-generic \ mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \ uninstall-am uninstall-info-am uninstall-themeDATA # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: atomix-2.14.0/themes/default/arrow-bottom.png0000644000175000017500000000110207432242343016070 00000000000000PNG  IHDR szzbKGDC pHYs  ~tIME $IDATx헽N0)?- 02ta*/b-m6aj;q~d5{{#hy~jd2I%@EQ @%ǁ}VK3qW0QN1p.{iP@Xm z>7lΥ,`yin8E%] ^t%fX; YX&Ү 0p& BQ $*' 8ȁa"$ƃbl"B8T\E '`l:"djӭoJ섒M "Bt|KKl % _s=g@D<\9Ag|RcM }G!ZJ^ESZH>UDJ;uV>PԬzkىn/Qh'z~G7!o"kx튾3߮RRIENDB`atomix-2.14.0/themes/default/arrow-left.png0000644000175000017500000000107507432242343015527 00000000000000PNG  IHDR szzbKGDC pHYs  ~tIME %ɅhIDATxj@hĢ R^{|^VZ(&2k6Mzr`Fٝ@E@*Hxx:`0\HP7d"l{&qw X Gt)kUWIn.Ґ0y7D2]@wf$@]\۲{C-%5ƃc5chɝeM݂gRE>!h Q*k`T#D! ABkQJRNJQ !Y/vp[,, |SN0'"k<#jÕo`#ckhF$qhL HC-00'`2zaP5ḑxCڡ UU)5á;RM}lG{A`W׹-?o\( $mUA{+mPe$8Rtt-14+W:C`}W 7X _{[ S_)S b>DT[/~q(IjU5>uVF4`d/hٽ J\)fEC+ Cs`G\KWدSu$)M\]Ôց5Ü_G'@IQvwѢөG0IENDB`atomix-2.14.0/themes/default/arrow-top.png0000644000175000017500000000107007432242343015372 00000000000000PNG  IHDR szzbKGDC pHYs  ~tIME $ /PIDATxKN0A E,@G趛J-G!yqR;vtɊѯgyq4h&^ J<yx*,bU@_902G7JLQaB4pW b^q$'nQaGN4o h%x(+ {Cb>R$fiz@L3SxcrԱ46s|f9:lF^;]v@f A.-˶2gu\I15cڃ82ώbQ RSX[΅;Os:r U<[4Z׮zbȁ{B/npIVs8F]ßqi'΁d nsDOɸX&XBZ Dt|OhYU!3d9@NHy IENDB`atomix-2.14.0/themes/default/atom-c.png0000644000175000017500000000371207432231237014625 00000000000000PNG  IHDR szzbKGD pHYs  ~tIME TWIDATxŗo?%E(Q#Պc e85 5-@FFۃ FuB=@=!Jn ʡv਱ʖ,RK%rݙYSrE0rəy}s `O. e#ZB(zeOn3l/| 4`cW{RYK:tA ݘIZeuuJ2/n@U;W (Vu0@J m(X[[\._7xtP"埾{9>> h6H)QJEQ,Dkt:M*beeM? ӎFa͏=jLMMQX^^fgga`&ibBH) u}n8y;õ'K3LsG?eVVV}˲HRR),², 0qL4M\Ų,L$p.rkkeZ ?믕 Ϟ=(m۶@"q1MX8ʣ<f /|orr0T*a8ض|Eazzq4+++DQh)%iQkl?Yx:zR### qR\p۶|i ׮]K A!C}ݗc  K?#Gh4Vq/|"n<&'')J . "Rt۩g.Vnu 2f^l< @(޲,NFQD\gF>Fd2A@V# ä|,D]W~.(yI,! ey%I)g# }+ R M :&J) HJ( C @JPx 9׿:!՝|OF0цnl_ A:B(<.$˞q2QAZZZJ&l&9@2&$ikZgHĞwww1M3}&sssori("qN:ba( KuDrΥj5N8cǎqyΝ;GP 2;;DNJD<`[}zXM o{DA u?|\.G60 : ܸqrxyHm=XU/KB|G)o3 y+Sz(h4a 6nw#'gD@>' C xΐR*ɱ6y4.]ݹ y 2sYGRJfi6a<5@xG^G)E__N:߾{fmn`/=bFJ[[P+`X}ߧ^SՈRDWWwTo.+ >jkB}+cR ˲ED~ۣhN e땅;%` 1n?Y_v&;>=DQDѠVyX,R,iDw}|Zc9eKݶLAI ɐdk핵[3`x]8bҎPX,'Y.(w5zts㫍%'m-^bٌv4ێL֖IKX{¼m{WiqچwD~-腗z4y؞IENDB`atomix-2.14.0/themes/default/atom-f.png0000644000175000017500000000364307423265002014630 00000000000000PNG  IHDR szzbKGDCXIDATxŗK{'3d`[ؑ,0+H&N $vYE ,`.^dDߑ>zXCz\.l?yxIw;um |ɗN,GWd8w|/&v1њ`1J$#ڝ67odfas,)7x@Ѐđ=x;caD'PX4dgsmv}G͋Rƽ'|Ѯ_ONL'@H yc 't!h-gL?Vl {%C̷Vm>lB@.r\@DBRm5B1mb,;hݸ q#/NIuJ+@!ӎ`Zy'oӧ'G'Iꐛ!DD, ^I˘HD!6{Osg(0$5bXJHmZ@Pnl(̈́$I$c` h C(XV^Ran]0  H= "zYnX@YogŹfo} *kjd@jN*G 4Օϥ"w7W**O38Pw%g&Eu\kF'Jp3v 飬0%;pe xR ٯ-[g~ 6arlT[:%}fYmp՝tOTuZgE\Yt1}S/2Lߠ3U~*+\MfZ@w:k8H\R_2SN5Eo6,6l(' jEtgV?}.g} LnjLϠSN5gjL^o G-&c z=h/_A5d0ABRL_`9ޖ[eK iԺBHAMQ\UAo}{:O5ЅFjKZä́&7tUw)zjMa ZotSWzTD y8ZVK{IENDB`atomix-2.14.0/themes/default/atom-h.png0000644000175000017500000000374207432231237014635 00000000000000PNG  IHDR szzbKGD pHYs  ~tIME eoIDATxŗ]\e93;~QRjDhL 4ʽ ĘPoL11+?xA/L ~@l vٙ9=tvKUofrr=}^?/_~3GWܴǾy)@܁[Cxk#6vK9 |$}Vi}玹Yvlfjr;= /7_o~  xƏ4=wq>eCTge,,X=:7q#/?d1gԧA Vg=yBX#HzJ=Q:w^? }/XBx;#s|~HQJ!DJ B'7zc, bB͇nh8x6[gKwnq(I$IZBJ!DBd' $6q!V/P&h 9tm{^_Z+XIӴ N5J1b9141F4Z{O\K̨GNt'cWq!RH}?'-Z_?@{g1hHw}3o*F$I0:}Z& iAzN^#FV Um!Ƨ? l3w޽k;a%DX' iH^/I&JAb,:okA`+ T 7Mo!MzY)BhZoծ%ژJB 7Ġ1xb4@fn!7WVd&)6 +/7A!H ؖہI h0eקDb3F+HY"CYAؚhz?}Us74x@@oq&C*=4dYn>bĹҰB FWpQ˜ %LJ@v  !ڙNk5"9Uݴ,4X{GI?JQ~^?LuCFWgexnTy|;|aHM_=%Q<(( ) lr<'Z b "ۜ6 C^[]G+111y~b@a x rk2@ԛtϽ ti^ /^V :<ȯS(,e\A`),>6lvݟ~f'16PXeW!euCWej/w0N{y7̿쮏>۶b ;,!nU+ b2d85])ӢZ+s{<ꩆ v;^qV[7Nx5 #/=xts[ǂ}^j9JI =z24o\b@+_h_oO0_xoK;CggӶ;&DM+IRCjGUV?9ǒ?qog}E@<r1ǁx,Qw-QJR2ETZ8uc9a`tf7W@;WcH,w]zurW7['!'k Pp jID5bJh{ʃIy01o -}ݿCzv.S-mIRM)"bb9ʍҿpѝ/= :g)da QgS|=*S :ҭ! w~*7FIT! 6 1B`swRDK8tyߑc/c6&\sb,"Sl0>\:0D39ޟRMSpKqL/' =,T&;~Gv_zHd !b}k ZvC@( Ԋ{+)tCa\$M Sfmd>`LFbSj4DWI\ s oƬءZzaK5 FKC]lQXW~!㻞@[hm2TAR)&1H58$ ;*A+51FGX/#2Ϗ̩4j$%*\lK˨8BXYMʜW_Eg)o\X43H-RGWz$$V8CC/4QI:>ޔP k-*@3(^ vXy_kcD8CC[۷DQt&dG8U6Ћ,adU%+"ɐtĉ 1!x/fzSu5~p?% *ƫ  +,*ءe/[ t=gS~q8׋,Q=)KkX u*/aaC3_h_\^ ܆e$ I E/vgڒjHR$88~tX-Xqǟ,TR m TAyU=I3V:H.W;K{+`Qٱw}kpKaR)*X DGqf Ɔoh *)P)+c=X[\[\؜?h?htJR'Q$IQ]_bImׁSm BKi ZMުr_R ) }{=>[&I*:Ҭ{)+cKyۖnev3<69ޟ!-`LV ;LIu*'?.|睋o׀<:ؖ99y>p#s;F2mw5o⊷x~A*p='E&#EXF5rej:%iX~.jq/7S!,TSqN$p מIENDB`atomix-2.14.0/themes/default/atom-o.png0000644000175000017500000000431407432231237014640 00000000000000PNG  IHDR szzbKGD pHYs  ~tIME ,(MYIDATxŗidUj뭺{zzf`Ą6 $AL$$0I\?Q?QL0 A"Ȣa鞞Z^[=~xaQ7W?s ogskOqȟȘhD+Rֹ銓$޳Og;0 +,?/"f)Oex8_zh\6nYykoGf0*60&&FK"2<zY<~^u_{ۏ)]y}TO|;R'|e;I֯xJ"8#"lӧU[!lx!%X6Z)/p =ONl[L7_&SY%d<*p*V @,fffюæpy|ؑŕY@~4o`玲{?Ktr5~/C{й<*Ce2(/+IL- +Bd 0DJp-VjbMw?s'ZuB*GzFq֞)W''jEV+5h/ָzm#OCt3?6m \| vz=>M_g`()RoOcE-,V*@KiFC;.*8De=} m5W}ďkq#䇆qU$7F?cu@Ԁi]b*(R 8(ףpxc<@덿$_F!QìN\Щ`9quľOpQ5+tbNFuAk??YSILSJ%iot4 zoO}Vhi@l21MG#cxv4$访Fd*P%א 61HrՍ(DZM$ 8lS6y"٨#C#Bj_G!BcɆAbzW0-gUq!d6t ʫAlXI M٩UzבF 6tkJ""h^퇲MXaXߠ 1nlaOY?:D"Fp.lT26W TVB=,jn%Herdo[09}{f ޯ,v$޳ʙB(׃}-((򽟠y|{tT&-c;VD}X#<T.Kgg/[vφE7W l@ IP~n?N;00㇙c(=eȲYF3u/IL 8739fZZIj}jҷH*U@`-ciH`%#`,/f$KЬfFÈ0 1(3ԘM M#&I Y$P-ea{;'@ x5?NՋ%(!Av5D:"{iK%, \ڑKSlrĞ*/fd5Z1"QC2вL]6nRh(#p~csx"(:K1`.U` G᭵BY 6ٴm FX-C%r#O}os9(0=D3#}cGc EVhm4DĖRh(Gl{l{L끹ǗG_&)Benس»/όZ4at!G0c1ؿ&My?$9FQж-k4MoY] 8hu]?˲ܽ3ir]7}ߏmRgueY^)u a}04B0#hK}M_ Je_X}K># d[8/a9IENDB`atomix-2.14.0/themes/default/link-bottom-left.png0000644000175000017500000000053207423265002016626 00000000000000PNG  IHDR szzgAMA a pHYs  ~IDATx?j@_V "jo  rr`%Bb1vvdSḨ@QEQEQ8<ϗ(Ɨij,[mM,g7oGsim^$g=7azu]}!|g]Dģ(cam0<[Y<u4M"LӄG\UUujt]AJyIt˲]u}In`ϯ/neSeIENDB`atomix-2.14.0/themes/default/link-bottom-right.png0000644000175000017500000000055507423265002017016 00000000000000PNG  IHDR szzgAMA a pHYs  ~IDATx=0ƀ1~!CLjzaϣƀsIƭfem    cqZ34MӪ۶u]EQ!eMM<CW۶/|꺎aJ),cG!4uM<( !Wa_=BUU43B}@AEW]:riڶ}(eBxK`Ѻ@)uc ',+e8|s7VIENDB`atomix-2.14.0/themes/default/link-bottom.png0000644000175000017500000000032007423265002015671 00000000000000PNG  IHDR szzgAMA a pHYs  ~rIDATx1 Ѓ׵2"iT .pvT """""9P) !"1zzkvRB5:6kZ [x.`!e&IENDB`atomix-2.14.0/themes/default/link-left-double.png0000644000175000017500000000051107423265002016571 00000000000000PNG  IHDR szzgAMA a pHYs  ~IDATx!@EuHc:$f/!83jE*D@N2H_RMT_ 8١<̌}ki`\)#2/IlZU qAD}g9]ׁ,,&}yfYviaPUжm[ŧ0Rjq,g KEḭŐm}4MvTBIENDB`atomix-2.14.0/themes/default/link-left.png0000644000175000017500000000031607423265002015324 00000000000000PNG  IHDR szzgAMA a pHYs  ~pIDATxӱ 0D?2Ү *V ݇%(EZ1$ { ,˂!p5 s(zϰ뺟(ލ1䀚}_۶& UUkcg[,Klۖ?BmiBI={'2Li9PsIENDB`atomix-2.14.0/themes/default/link-right.png0000644000175000017500000000031607423265002015507 00000000000000PNG  IHDR szzgAMA a pHYs  ~pIDATxϱ 7bj&مyhhYN%7Nrg)XrWoVb{J "Jsvz卑fZkc朏$""MIENDB`atomix-2.14.0/themes/default/link-top-double.png0000644000175000017500000000046507423265002016451 00000000000000PNG  IHDR szzgAMA a pHYs  ~IDATx?@o/&@{`'YH+ϗ p!)+af8,k۶4p]W6Mâ(.kv]m=$J)oضNB\]inyKeR%,BEcl$I<F^a&z$Ij$B*"G{0@)!,wOmPE Cx MӐ|>*"˲H4OUURi٬/ˡ*#GR,8x<4}Nu}n(  G.H IENDB`atomix-2.14.0/themes/default/link-top-right.png0000644000175000017500000000056607423265002016316 00000000000000PNG  IHDR szzgAMA a pHYs  ~IDATx!r@N-2K 8 Dg8C *GȮ*06q-.RO t]&`ZiTU'`#qݺ!苢H{AeubY((_3qIENDB`atomix-2.14.0/themes/default/link-top.png0000644000175000017500000000031407423265002015172 00000000000000PNG  IHDR szzgAMA a pHYs  ~nIDATxб DQ+55+bh\årpȽЗERJPU1ZCDD9]]`T4*w)X.N6z tIENDB`atomix-2.14.0/themes/default/shadow-bottom-right.png0000644000175000017500000000026207423565705017356 00000000000000PNG  IHDR szzbKGDgIDATx10E1q$D Hn#¹ ]~Yft@'{Gf;| C4J)Rnq#FQ}IENDB`atomix-2.14.0/themes/default/shadow-left-top.png0000644000175000017500000000032207423565705016466 00000000000000PNG  IHDR szzbKGDIDATxӱ A/0 L "ByB&0NK,@C8ܯp}p. bxvB$=$VX'02 !I 0OYi<0Iq4@ PQ%IENDB`atomix-2.14.0/themes/default/shadow-left.png0000644000175000017500000000020407423565705015665 00000000000000PNG  IHDR szzbKGD9IDATxΡ # bͼyt9@G IENDB`atomix-2.14.0/themes/default/shadow-top-left-both.png0000644000175000017500000000036607423565705017430 00000000000000PNG  IHDR szzbKGDIDATxս QȄ2E,2P ˵,Wݞ{9^Q&3LJ#,1'@/ }lЎ@;4(q= 8G! 7 ](ԆQ鵜OTKn([d@d@d@d#_=^baIENDB`atomix-2.14.0/themes/default/shadow-top-left.png0000644000175000017500000000031507423565705016470 00000000000000PNG  IHDR szzbKGDIDATxӡ AwBaP( A0WS&A0̗lew^x@KwcI\Oz$@ & PNW $@뺮B&#MGIENDB`atomix-2.14.0/themes/default/shadow-top.png0000644000175000017500000000020007423565705015531 00000000000000PNG  IHDR szzbKGD5IDATxA 0 @G*G!`s-:+@> 6zXZkOfIENDB`atomix-2.14.0/themes/default/theme0000644000175000017500000000351507432032304013757 00000000000000 atomix-2.14.0/themes/default/wall-bottom-left.png0000644000175000017500000000104007423265002016623 00000000000000PNG  IHDR szzbKGDCIDATxŖKr0D[?Rc2KeX.7 Llk x3k@" a3!jpx0! }58"x렜-rO,x4P&`JRη 1L«EB=Ie`ӚG0.yOȶ]§JF??/d«5a)J&8%/b$ RB05*@VoL!6,/@ۮm!,1I8G^z<4^BV &s7/#[ ]tG8ka> !x H :;k71_o+5֘?LeBa|Q@Qsgm5]Rv\;"_tQ_ï*0T~E9t76:48~ pIpStyIENDB`atomix-2.14.0/themes/default/wall-bottom-right.png0000644000175000017500000000072507423265002017017 00000000000000PNG  IHDR szzbKGDIDATxA0 E޷gv7D;E! m "0KHD@?׫dT rM Q5vAd S s;\ךfT g b 'Ld63)y}P].-7<}ffȞVWB{<ՠoY{&KӘt#Hf&0<ۂȮ?oϒUw^vMƒ/ p' Fu_ 9'MIENDB`atomix-2.14.0/themes/default/wall-horizontal-left-end.png0000644000175000017500000000114107432032304020253 00000000000000PNG  IHDR bKGD pHYs  ~tIME 7M懂IDATxMR#1 F?re)ĒY81!I貫,ၘV3swD`\<1Y.#q3wgfNI:UU;# D!"N)E`CJDI=ۻ!p7UX^C;$f|wCN'͡3S!g~PνVZ _AgU3""hy̮'ƟpD)U/n>"(uG0s_W|Mph'zCc}J)ooo' Kٮ-{K)7̜R__١D5Z#Bo $gY,:m78B/}~MIzN z| UݬV^%͘tzZo$ֺlFo=Rp:>P~PIENDB`atomix-2.14.0/themes/default/wall-horizontal-right-end.png0000644000175000017500000000110707432032304020440 00000000000000PNG  IHDR bKGD pHYs  ~tIME 8q{IDATxn0gYa.}\R*5)a@3?_,hfJ;'"VˋB)m%x_Da\.1F@1^>bعctfv"!2dYJ4!ScNy?դ.z_#U)iJQ`#ezRk:mFP8"w﫼+X rfe@>[عbLCf)8{L'"DNE0l҉HG;nv^*0 >f2S՝)%"!7`!HƼ׭,Y,|'3(3% @eLdC~z.f\h beIENDB`atomix-2.14.0/themes/default/wall-horizontal-bottomx.png0000644000175000017500000000070007432032304020251 00000000000000PNG  IHDR bKGD pHYs  ~tIME 3޻MIDATxMr0 F%Y8I 2=%2(lӁ8iW|k=9?2>.0 hf{M)zlVl) !^qw*. ADm:HdqDZ0[[T TDC)l)%~^mk1f^1DRٮ9FD߶_ "D<[ΪVU4x=vD{ȽkmY]q "1T5Wt$"A$xAamXOv'|ߚ>}I? _LH"~)~& :|UY>ӡ;Aamq.31PnsCvvX1 IENDB`atomix-2.14.0/themes/default/wall-horizontal-topx.png0000644000175000017500000000117407432032304017555 00000000000000PNG  IHDR bKGD pHYs  ~tIME >ln IDATxr0 %r/g܆@I,[ oCٻW#4c-x1-D{f3I7pC@t+TcEmiQ>!( ƨ@䧩~}5k3\]ҏjS"|<݉qܟVhm[:/¹{10sݖM3@|q%@b[w]4 "Cg@R>16MsڑSf댵OeiS:c~4aZXgdܯ࣎~07C! Xt Ѧi.Lb?Mhb?ρY[uZD&M.*|cڭVB(./JfZ):fQmZ33" hyzQ)$A4W$;9c4"yg셈J/4c\| Ob>kaCHDs |̯n74#-0]IENDB`atomix-2.14.0/themes/default/wall-horizontal.png0000644000175000017500000000040307423265002016562 00000000000000PNG  IHDR szzbKGDCIDATxA aZ{^KvijHqAhvȃ}98X+Zc?/UM㨪D1jwz ,bfXǒ*"=u.e773([بoǀ*)@q1gDaEyWC@yO+f"">SL1g +3;hW0#S'3%=s;練> HKvq O"Kb?>뺟]§/$"I6ؒIENDB`atomix-2.14.0/themes/default/wall-top-left.png0000644000175000017500000000073407423265002016132 00000000000000PNG  IHDR szzbKGDCIDATxMr0 ms1),`[R`5L +$=hDS^i0t! Dup0"5psn7Ĉ Dy]XECTY Td[q"AT̻@pz0,1y2 &|=1 !<5'"Ebܢ mZZ"z?̊K>RHc+2? G rG(:+vZ ι͋~@sm Ta k3',!(%!'`*XkMӠޣ_ B#x 9WIENDB`atomix-2.14.0/themes/default/wall-top-right.png0000644000175000017500000000104407423265002016310 00000000000000PNG  IHDR szzbKGDCIDATxڽ]n0䒴CL/Q$.Z@r?>"։E2A7Ýߟ{ocEp!%+J/ ēspN#|ƒ `fBln[(w\<93"Փہm(Z ZxAN5plZӯ%c-k|3+?P¯%k[𫇹E;E&{KP bt󝣘CT >>6"m-~ßNV1rDIENDB`atomix-2.14.0/themes/default/wall-vertical-bottom-end.png0000644000175000017500000000100107423265002020243 00000000000000PNG  IHDR szzbKGDCIDATxn!`4/Tɪ"YjJ ".vgq0 Ѱu}#r;jj\gC?S:^lr~ߋpPmt~s!yr圫oJAal ?72"WFD<@D ƀls 1$Bx,!X =qDN 9g۲iWsWULӄH"CuQ{y ĻD\C@j~ua>O,JruMpMC_ #p^p0 xUH|/X<Ÿ~B*"q ħi=_H1@*kV qK8/K%P9>놜JIJHˋ:G˫Kevno%f IENDB`atomix-2.14.0/themes/default/wall-vertical-leftx.png0000644000175000017500000000110007423265002017315 00000000000000PNG  IHDR szzbKGDCIDATxڽr@EW5c+6XCtT@_A#> ^0F,eYFScdbq LDEUQْuםwsjY$+ sϦhwg7`$I@Xc0ZcsSwlvas@ϰL;6<݌f`h#l6mG,Cc;G۶f wјAuIENDB`atomix-2.14.0/themes/default/wall-vertical-top-end.png0000644000175000017500000000105707423265002017554 00000000000000PNG  IHDR szzbKGDCIDATx0Dv/Hff%n{  lٕ\r܏JZ1U^>kx S2qH3cu'Bl!!%#猘*z8Pk%Ĉxf~Tє8v#>9 S%1Z>FDضC}Nf]JyX!"8=ff`4pLmgߎA܇ p̂>v{S&Uoɵq> "Dpӫ68הN~mjMyߘi@QK!N|Rr޳+T񵎵=fx6%~y3+EL!:Jw9kݎZ 9>Jݏ^ 9w/e8Re`Y]Lો3u8l6~}~UbߓEO1o ʓsIENDB`atomix-2.14.0/themes/default/wall-vertical.png0000644000175000017500000000040507423265002016204 00000000000000PNG  IHDR szzbKGDCIDATxA Etsz/٥"M5&.hc 餔b "rG˂Lιs CN{}